summary refs log tree commit diff
diff options
context:
space:
mode:
authorLudovic Courtès <ludovic.courtes@inria.fr>2019-02-07 15:24:01 +0100
committerLudovic Courtès <ludo@gnu.org>2019-02-07 15:46:45 +0100
commitb07712bfb13039b3ead57e9f3ca91d4e3ebadd2a (patch)
tree583162412e3ee331ae20eccb102a2b398122eb46
parent487cbb0164c715e722b622fa800fa0b217fa132c (diff)
downloadguix-b07712bfb13039b3ead57e9f3ca91d4e3ebadd2a.tar.gz
gnu: openmpi: Add dependency on SLURM.
This allows users to run Open MPI programs with 'srun'.

* gnu/packages/mpi.scm (openmpi)[inputs]: Add SLURM.
[arguments]: Add "--with-pmi" to #:configure-flags.
-rw-r--r--gnu/packages/mpi.scm13
1 files changed, 10 insertions, 3 deletions
diff --git a/gnu/packages/mpi.scm b/gnu/packages/mpi.scm
index 6e56142bd1..1f69a04bc9 100644
--- a/gnu/packages/mpi.scm
+++ b/gnu/packages/mpi.scm
@@ -1,6 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2014, 2015, 2018 Eric Bavier <bavier@member.fsf.org>
-;;; Copyright © 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2014 Ian Denhardt <ian@zenhack.net>
 ;;; Copyright © 2016 Andreas Enge <andreas@enge.fr>
 ;;; Copyright © 2017 Dave Love <fx@gnu.org>
@@ -40,6 +40,7 @@
   #:use-module (gnu packages xml)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages ncurses)
+  #:use-module (gnu packages parallel)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages valgrind)
   #:use-module (srfi srfi-1)
@@ -180,7 +181,8 @@ bind processes, and much more.")
              `(("psm2" ,psm2))
              '())
        ("rdma-core" ,rdma-core)
-       ("valgrind" ,valgrind)))
+       ("valgrind" ,valgrind)
+       ("slurm" ,slurm)))              ;for PMI support (launching via "srun")
     (native-inputs
      `(("pkg-config" ,pkg-config)
        ("perl" ,perl)))
@@ -197,7 +199,12 @@ bind processes, and much more.")
                            ,(string-append "--with-valgrind="
                                            (assoc-ref %build-inputs "valgrind"))
                            ,(string-append "--with-hwloc="
-                                           (assoc-ref %build-inputs "hwloc")))
+                                           (assoc-ref %build-inputs "hwloc"))
+
+                           ;; Enable support for SLURM's Process Manager
+                           ;; Interface (PMI).
+                           ,(string-append "--with-pmi="
+                                           (assoc-ref %build-inputs "slurm")))
        #:phases (modify-phases %standard-phases
                   (add-before 'build 'remove-absolute
                     (lambda _