diff options
Diffstat (limited to 'gnu/packages/mpi.scm')
-rw-r--r-- | gnu/packages/mpi.scm | 29 |
1 files changed, 18 insertions, 11 deletions
diff --git a/gnu/packages/mpi.scm b/gnu/packages/mpi.scm index 5fde6efae4..9f6597c6b3 100644 --- a/gnu/packages/mpi.scm +++ b/gnu/packages/mpi.scm @@ -52,7 +52,7 @@ #:use-module (srfi srfi-1) #:use-module (ice-9 match)) -(define-public hwloc +(define-public hwloc-1 ;; Note: For now we keep 1.x as the default because many packages have yet ;; to migrate to 2.0. (package @@ -134,7 +134,7 @@ bind processes, and much more.") (define-public hwloc-2 ;; Note: 2.0 isn't the default yet, see above. (package - (inherit hwloc) + (inherit hwloc-1) (version "2.1.0") (source (origin (method url-fetch) @@ -146,9 +146,9 @@ bind processes, and much more.") "0qh8s7pphz0m5cwb7liqmc17xzfs23xhz5wn24r6ikvjyx99fhhr")))) ;; libnuma is no longer needed. - (inputs (alist-delete "numactl" (package-inputs hwloc))) + (inputs (alist-delete "numactl" (package-inputs hwloc-1))) (arguments - (substitute-keyword-arguments (package-arguments hwloc) + (substitute-keyword-arguments (package-arguments hwloc-1) ((#:phases phases) `(modify-phases ,phases (replace 'skip-linux-libnuma-test @@ -163,6 +163,10 @@ bind processes, and much more.") (define-deprecated hwloc-2.0 'hwloc-2 hwloc-2) +(define-public hwloc + ;; The latest stable series of hwloc. + hwloc-2) + (define-public openmpi (package (name "openmpi") @@ -192,7 +196,7 @@ bind processes, and much more.") `(("psm2" ,psm2)) '()) ,@(if (and (not (%current-target-system)) - (member (%current-system) (package-supported-systems psm2))) + (member (%current-system) (package-supported-systems ucx))) `(("ucx" ,ucx)) '()) ("rdma-core" ,rdma-core) @@ -210,12 +214,6 @@ bind processes, and much more.") "--with-hwloc=external" "--with-libevent" - ;; Make sure ./configure fails if one of these is - ;; missing. - "--with-ucx" - "--with-psm" - "--with-psm2" - ;; InfiniBand support "--enable-openib-control-hdr-padding" "--enable-openib-dynamic-sl" @@ -348,6 +346,15 @@ only provides @code{MPI_THREAD_FUNNELED}."))) ;; Allow oversubscription in case there are less physical cores available ;; in the build environment than the package wants while testing. (setenv "OMPI_MCA_rmaps_base_mapping_policy" "core:OVERSUBSCRIBE") + + ;; UCX sometimes outputs uninteresting warnings such as: + ;; + ;; mpool.c:38 UCX WARN object 0x7ffff44fffc0 was not returned to mpool ucp_am_bufs + ;; + ;; These in turn leads to failures of test suites that capture and + ;; compare stdout, such as that of 'hdf5-parallel-openmpi'. Thus, tell + ;; UCX to not emit those warnings. + (setenv "UCX_LOG_LEVEL" "error") #t)) (define-public intel-mpi-benchmarks |