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>
This commit is contained in:
Dave Love 2017-07-27 15:52:34 +01:00 committed by Ludovic Courtès
parent cf684d87d7
commit 685bef2bd1
No known key found for this signature in database
GPG Key ID: 090B11993D9AEBB5
1 changed files with 14 additions and 1 deletions

View File

@ -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}.")))