mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2025-01-12 14:16:55 -05:00
gnu: openmpi: Raise the priority of the PSM2 component.
This allows us to get better performance by default on machines with OmniPath hardware. * gnu/packages/patches/openmpi-psm2-priority.patch: New file. * gnu/packages/mpi.scm (openmpi)[source]: Use it. * gnu/local.mk (dist_patch_DATA): Add it.
This commit is contained in:
parent
348caf3d2c
commit
faab7082ab
3 changed files with 24 additions and 1 deletions
|
@ -1192,6 +1192,7 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/opencv-rgbd-aarch64-test-fix.patch \
|
||||
%D%/packages/patches/openfoam-4.1-cleanup.patch \
|
||||
%D%/packages/patches/openjdk-10-idlj-reproducibility.patch \
|
||||
%D%/packages/patches/openmpi-psm2-priority.patch \
|
||||
%D%/packages/patches/openocd-nrf52.patch \
|
||||
%D%/packages/patches/opensmtpd-fix-crash.patch \
|
||||
%D%/packages/patches/openssl-runpath.patch \
|
||||
|
|
|
@ -174,7 +174,8 @@ (define-public openmpi
|
|||
(version-major+minor version)
|
||||
"/downloads/openmpi-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32 "0ms0zvyxyy3pnx9qwib6zaljyp2b3ixny64xvq3czv3jpr8zf2wh"))))
|
||||
(base32 "0ms0zvyxyy3pnx9qwib6zaljyp2b3ixny64xvq3czv3jpr8zf2wh"))
|
||||
(patches (search-patches "openmpi-psm2-priority.patch"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
`(("hwloc" ,hwloc-2 "lib")
|
||||
|
|
21
gnu/packages/patches/openmpi-psm2-priority.patch
Normal file
21
gnu/packages/patches/openmpi-psm2-priority.patch
Normal file
|
@ -0,0 +1,21 @@
|
|||
PSM2 is the only valid implementation for OmniPath (OPA). UCX also
|
||||
supports OmniPath, but it does so via Verbs, thus getting much lower
|
||||
performance (typically 3 GiB/s instead of 10 GiB/s).
|
||||
|
||||
To work around that, give the mtl_psm2 component a higher priority
|
||||
than the pml_ucx component.
|
||||
|
||||
See <https://www.mail-archive.com/users@lists.open-mpi.org/msg33581.html>.
|
||||
|
||||
--- openmpi-4.0.2/ompi/mca/mtl/psm2/mtl_psm2_component.c 2019-11-15 17:06:15.142076840 +0100
|
||||
+++ openmpi-4.0.2/ompi/mca/mtl/psm2/mtl_psm2_component.c 2019-11-15 17:06:22.242009379 +0100
|
||||
@@ -126,7 +126,7 @@ ompi_mtl_psm2_component_register(void)
|
||||
setenv("PSM2_DEVICES", "self,shm", 0);
|
||||
}
|
||||
|
||||
- param_priority = 40;
|
||||
+ param_priority = 55;
|
||||
(void) mca_base_component_var_register (&mca_mtl_psm2_component.super.mtl_version,
|
||||
"priority", "Priority of the PSM2 MTL component",
|
||||
MCA_BASE_VAR_TYPE_INT, NULL, 0, 0,
|
||||
|
Loading…
Reference in a new issue