unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
blob fd76594ddd0f837c4208a9b2d0c3076c8dfb8424 1638 bytes (raw)
name: patches/openmpi-mtl-priorities.patch 	 # note: path name is non-authoritative(*)

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
 
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,

Likewise for PSM: we want InfiniPath to be taken care of by PSM, not by UCX,
since UCX achieves worse performance.

--- openmpi-4.0.2/ompi/mca/mtl/psm/mtl_psm_component.c
+++ openmpi-4.0.2/ompi/mca/mtl/psm/mtl_psm_component.c
@@ -92,7 +92,7 @@ ompi_mtl_psm_component_register(void)
 
 
     /* set priority high enough to beat ob1's default */
-    param_priority = 30;
+    param_priority = 54;
     (void) mca_base_component_var_register (&mca_mtl_psm_component.super.mtl_version,
                                             "priority", "Priority of the PSM MTL component",
                                             MCA_BASE_VAR_TYPE_INT, NULL, 0, 0,

debug log:

solving fd76594ddd0f837c4208a9b2d0c3076c8dfb8424 ...
found fd76594ddd0f837c4208a9b2d0c3076c8dfb8424 in https://git.savannah.gnu.org/cgit/guix.git

(*) Git path names are given by the tree(s) the blob belongs to.
    Blobs themselves have no identifier aside from the hash of its contents.^

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).