openmpi: build against external prrte on all platforms
`openmpi` can build against either an external `prrte` or its own vendored `prrte`. This change prefers using the external `prrte` built by Nixpkgs on all platform (including Darwin, now that the `prrte` build is enabled on all platforms)
This commit is contained in:
@@ -85,6 +85,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
zlib
|
||||
libevent
|
||||
hwloc
|
||||
prrte
|
||||
]
|
||||
++ lib.optionals stdenv.hostPlatform.isLinux [
|
||||
libnl
|
||||
@@ -92,7 +93,6 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
pmix
|
||||
ucx
|
||||
ucc
|
||||
prrte
|
||||
]
|
||||
++ lib.optionals cudaSupport [ cudaPackages.cuda_cudart ]
|
||||
++ lib.optionals (stdenv.hostPlatform.isLinux || stdenv.hostPlatform.isFreeBSD) [ rdma-core ]
|
||||
@@ -119,7 +119,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
"--with-pmix=${lib.getDev pmix}"
|
||||
"--with-pmix-libdir=${lib.getLib pmix}/lib"
|
||||
# Puts a "default OMPI_PRTERUN" value to mpirun / mpiexec executables
|
||||
(lib.withFeatureAs stdenv.hostPlatform.isLinux "prrte" (lib.getBin prrte))
|
||||
(lib.withFeatureAs true "prrte" (lib.getBin prrte))
|
||||
(lib.withFeature enableSGE "sge")
|
||||
(lib.enableFeature enablePrefix "mpirun-prefix-by-default")
|
||||
# TODO: add UCX support, which is recommended to use with cuda for the most robust OpenMPI build
|
||||
|
||||
Reference in New Issue
Block a user