Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

impi_rt only activates correctly with cmd.exe #80

Open
1 task done
minrk opened this issue Oct 17, 2024 · 2 comments
Open
1 task done

impi_rt only activates correctly with cmd.exe #80

minrk opened this issue Oct 17, 2024 · 2 comments
Labels
bug Something isn't working

Comments

@minrk
Copy link
Member

minrk commented Oct 17, 2024

Solution to issue cannot be found in the documentation.

  • I checked the documentation.

Issue

impi_rt only has a .bat activation script for cmd.exe. This activation is required to use impi at runtime because it adds %CONDA_PREFIX%\Library\bin\libfabric to %PATH%, and mpiexec doesn't work without it. As a result, activating impi environments with e.g. powershell or bash on Windows results in errors like libfabric.dll not found.

The only workarounds I see are to manually set PATH on shells other than cmd.exe, or always use cmd.exe if impi might be used, neither of which are great for users.

It's unclear how to fix things like this in a 'repack' feedstock.

Installed packages

# packages in environment at C:\Users\runneradmin\miniconda3\envs\fenics:
#
# Name                    Version                   Build  Channel
bzip2                     1.0.8                h2466b09_7    conda-forge
ca-certificates           2024.8.30            h56e8100_0    conda-forge
cffi                      1.17.1           py39ha55e580_0    conda-forge
fenics-basix              0.9.0            py39h21430d2_1    conda-forge
fenics-basix-nanobind-abi 0.2.1.2022           hc2f5e26_1    conda-forge
fenics-dolfinx            0.9.0            py39h4f5abcc_3    conda-forge
fenics-ffcx               0.9.0              pyh2e48890_0    conda-forge
fenics-libbasix           0.9.0                h8983ae2_1    conda-forge
fenics-libdolfinx         0.9.0                ha7d62fa_3    conda-forge
fenics-ufcx               0.9.0                h1076a80_0    conda-forge
fenics-ufl                2024.2.0           pyhd8ed1ab_0    conda-forge
fmt                       10.2.1               h181d51b_0    conda-forge
hdf5                      1.14.3          mpi_impi_h2ee790a_5    conda-forge
impi_rt                   2021.12.0          h57928b3_537    conda-forge
intel-openmp              2024.2.1          h57928b3_1083    conda-forge
krb5                      1.21.3               hdf4eb48_0    conda-forge
libaec                    1.1.3                h63175ca_0    conda-forge
libblas                   3.9.0              24_win64_mkl    conda-forge
libboost                  1.86.0               h444863b_2    conda-forge
libboost-devel            1.86.0               h91493d7_2    conda-forge
libboost-headers          1.86.0               h57928b3_2    conda-forge
libcblas                  3.9.0              24_win64_mkl    conda-forge
libcurl                   8.10.1               h1ee3ff0_0    conda-forge
libffi                    3.4.2                h8ffe710_5    conda-forge
libflang                  5.0.0           h6538335_20180525    conda-forge
libglib                   2.82.1               h7025463_1    conda-forge
libhwloc                  2.11.1          default_h8125262_1000    conda-forge
libiconv                  1.17                 hcfcfb64_2    conda-forge
libintl                   0.22.5               h5728263_3    conda-forge
liblapack                 3.9.0              24_win64_mkl    conda-forge
libptscotch               7.0.5                h908f345_1    conda-forge
libscotch                 7.0.5                h15f9def_1    conda-forge
libsqlite                 3.46.1               h2466b09_0    conda-forge
libssh2                   1.11.0               h7dfc565_0    conda-forge
libxml2                   2.12.7               h0f24e4e_4    conda-forge
libzlib                   1.3.1                h2466b09_2    conda-forge
llvm-meta                 5.0.0                         0    conda-forge
mkl                       2024.1.0           h66d3029_694    conda-forge
mpi                       1.0                        impi    conda-forge
mpi4py                    3.1.6            py39h48b74d0_1    conda-forge
numpy                     2.0.2            py39h60232e0_0    conda-forge
openmp                    5.0.0                    vc14_1    conda-forge
openssl                   3.3.2                h2466b09_0    conda-forge
pcre2                     10.44                h3d7b363_2    conda-forge
pip                       24.2               pyh8b19718_1    conda-forge
pkg-config                0.29.2            h88c491f_1009    conda-forge
pthreads-win32            2.9.1                h2466b09_4    conda-forge
pugixml                   1.14                 h63175ca_0    conda-forge
pycparser                 2.22               pyhd8ed1ab_0    conda-forge
python                    3.9.20          hfaddaf0_1_cpython    conda-forge
python_abi                3.9                      5_cp39    conda-forge
setuptools                75.1.0             pyhd8ed1ab_0    conda-forge
spdlog                    1.13.0               h64d2f7d_0    conda-forge
tbb                       2021.13.0            hc790b64_0    conda-forge
tk                        8.6.13               h5226925_1    conda-forge
tzdata                    2024b                hc8b5060_0    conda-forge
ucrt                      10.0.22621.0         h57928b3_1    conda-forge
vc                        14.3                h8a93ad2_22    conda-forge
vc14_runtime              14.40.33810         hcc2c482_22    conda-forge
vs2015_runtime            14.40.33810         h3bf8584_22    conda-forge
vs2022_win-64             19.41.34120         h72b6792_22    conda-forge
vswhere                   3.1.7                h57928b3_0    conda-forge
wheel                     0.44.0             pyhd8ed1ab_0    conda-forge
xz                        5.2.6                h8d14728_0    conda-forge
zlib                      1.3.1                h2466b09_2    conda-forge
zstd                      1.5.6                h0ea2cb4_0    conda-forge

Environment info

     active environment : fenics
    active env location : C:\Users\runneradmin\miniconda3\envs\fenics
            shell level : 2
       user config file : C:\Users\runneradmin\.condarc
 populated config files : C:\Users\runneradmin\miniconda3\.condarc
                          C:\Users\runneradmin\.condarc
          conda version : 24.7.1
    conda-build version : not installed
         python version : 3.12.6.final.0
                 solver : libmamba (default)
       virtual packages : __archspec=1=x86_64_v3
                          __conda=24.7.1=0
                          __win=0=0
       base environment : C:\Users\runneradmin\miniconda3  (writable)
      conda av data dir : C:\Users\runneradmin\miniconda3\etc\conda
  conda av metadata url : None
           channel URLs : https://conda.anaconda.org/conda-forge/win-64
                          https://conda.anaconda.org/conda-forge/noarch
          package cache : C:\Users\runneradmin\conda_pkgs_dir
       envs directories : C:\Users\runneradmin\miniconda3\envs
                          C:\Users\runneradmin\.conda\envs
                          C:\Users\runneradmin\AppData\Local\conda\conda\envs
               platform : win-64
             user-agent : conda/24.7.1 requests/2.32.3 CPython/3.12.6 Windows/2022Server Windows/10.0.20348 solver/libmamba conda-libmamba-solver/24.7.0 libmambapy/1.5.9
          administrator : True
             netrc file : None
           offline mode : False
@minrk minrk added the bug Something isn't working label Oct 17, 2024
@isuruf
Copy link
Member

isuruf commented Oct 17, 2024

I think we should just add a libfabric conda package and remove the vendored DLLs and executables.

@minrk
Copy link
Member Author

minrk commented Nov 18, 2024

libfabric is now packaged for everything except Windows. The repo only has .vcxproj, and I haven't built a Windows package with just that before. I imagine it's just the right invocation of msbuild project.... But for someone who knows how to do it, it shouldn't be too hard, I hope: conda-forge/libfabric-feedstock#2

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants