aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDave Love <fx@gnu.org>2017-07-27 15:52:34 +0100
committerLudovic Courtès <ludo@gnu.org>2017-08-21 17:04:54 +0200
commit685bef2bd1d92678c7f7104fee9f6e46438d88f8 (patch)
tree416590f4c1a72433dd226119c1c8a1768aeed620
parentcf684d87d7446ffe33ca4c73bf51dc24fa5a7129 (diff)
downloadguix-685bef2bd1d92678c7f7104fee9f6e46438d88f8.tar
guix-685bef2bd1d92678c7f7104fee9f6e46438d88f8.tar.gz
gnu: openmpi: Add separate variant with thread-multiple support.
* gnu/packages/mpi.scm (openmpi)[arguments]: Remove "--enable-mpi-thread-multiple". (openmpi-thread-multiple): New variable. Signed-off-by: Ludovic Courtès <ludovic.courtes@inria.fr>
-rw-r--r--gnu/packages/mpi.scm15
1 files changed, 14 insertions, 1 deletions
diff --git a/gnu/packages/mpi.scm b/gnu/packages/mpi.scm
index d6423aa6fc..ac7b9b2545 100644
--- a/gnu/packages/mpi.scm
+++ b/gnu/packages/mpi.scm
@@ -135,7 +135,6 @@ bind processes, and much more.")
(arguments
`(#:configure-flags `("--enable-static"
- "--enable-mpi-thread-multiple"
"--enable-builtin-atomics"
"--enable-mpi-ext=all"
@@ -184,3 +183,17 @@ best MPI library available. Open MPI offers advantages for system and
software vendors, application developers and computer science researchers.")
;; See file://LICENSE
(license bsd-2)))
+
+(define-public openmpi-thread-multiple
+ (package
+ (inherit openmpi)
+ (name "openmpi-thread-multiple")
+ (arguments
+ (substitute-keyword-arguments (package-arguments openmpi)
+ ((#:configure-flags flags)
+ `(cons "--enable-mpi-thread-multiple" ,flags))))
+ (description " This version of Open@tie{}MPI has an implementation of
+@code{MPI_Init_thread} that provides @code{MPI_THREAD_MULTIPLE}. This won't
+work correctly with all transports (such as @code{openib}), and the
+performance is generally worse than the vanilla @code{openmpi} package, which
+only provides @code{MPI_THREAD_FUNNELED}.")))