[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
12/12: gnu: openmpi: Raise the priority of the PSM2 component.
From: |
guix-commits |
Subject: |
12/12: gnu: openmpi: Raise the priority of the PSM2 component. |
Date: |
Fri, 15 Nov 2019 11:53:28 -0500 (EST) |
civodul pushed a commit to branch master
in repository guix.
commit faab7082ab9587b71ca5ae8becdf72234f3c51d7
Author: Ludovic Courtès <address@hidden>
Date: Fri Nov 15 17:15:05 2019 +0100
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.
---
gnu/local.mk | 1 +
gnu/packages/mpi.scm | 3 ++-
gnu/packages/patches/openmpi-psm2-priority.patch | 21 +++++++++++++++++++++
3 files changed, 24 insertions(+), 1 deletion(-)
diff --git a/gnu/local.mk b/gnu/local.mk
index 7ef5ef7..4e6fb7c 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -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 \
diff --git a/gnu/packages/mpi.scm b/gnu/packages/mpi.scm
index 79ee948..5fde6ef 100644
--- a/gnu/packages/mpi.scm
+++ b/gnu/packages/mpi.scm
@@ -174,7 +174,8 @@ bind processes, and much more.")
(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")
diff --git a/gnu/packages/patches/openmpi-psm2-priority.patch
b/gnu/packages/patches/openmpi-psm2-priority.patch
new file mode 100644
index 0000000..d9dd558
--- /dev/null
+++ b/gnu/packages/patches/openmpi-psm2-priority.patch
@@ -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/address@hidden/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,
+
- 02/12: gnu: ucx: Do not install static libraries., (continued)
- 02/12: gnu: ucx: Do not install static libraries., guix-commits, 2019/11/15
- 03/12: gnu: openmpi: Pass explicit "--with-*" configure flags., guix-commits, 2019/11/15
- 05/12: gnu: rdma-core: Update to 26.0., guix-commits, 2019/11/15
- 09/12: gnu: hwloc: Update to 2.1.0., guix-commits, 2019/11/15
- 10/12: gnu: openmpi, slurm: Switch to hwloc 2.x., guix-commits, 2019/11/15
- 04/12: gnu: rdma-core: Use the "write" ioctl mode., guix-commits, 2019/11/15
- 08/12: gnu: slurm: Build shared libraries only., guix-commits, 2019/11/15
- 06/12: gnu: Add Intel MPI Benchmarks., guix-commits, 2019/11/15
- 11/12: gnu: psm: Add "debug" output., guix-commits, 2019/11/15
- 07/12: gnu: slurm: Update to 19.05.3-2., guix-commits, 2019/11/15
- 12/12: gnu: openmpi: Raise the priority of the PSM2 component.,
guix-commits <=