guix-glicid/glicid/packages/mpi.scm

72 lines
2.5 KiB
Scheme
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

(define-module (glicid packages mpi)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module ((gnu packages mpi)
#:prefix gnu:)
#:use-module (glicid utils)
#:use-module (guix utils)
#:use-module (glicid packages parallel)
#:use-module (gnu packages parallel)
#:use-module (guix gexp)
#:use-module (gnu packages))
;(define-public openmpi-glicid-internal-pmix
; (package/inherit gnu:openmpi-4
; (name "openmpi-glicid")
; (inputs (modify-inputs (package-inputs gnu:openmpi-4)
; (append openpmix) ;; because we use pmix4 now, openpmi-4 defaults to internal pmix3
; (replace "slurm" slurm-glicid)))
;
; )
;)
(define-public openmpi-upstream-4.1.8
(package
(inherit gnu:openmpi-4)
(name "openmpi-4-upstream")
(version "4.1.8")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.open-mpi.org/software/ompi/v"
(version-major+minor version) "/downloads/openmpi-"
version ".tar.bz2"))
(sha256
(base32 "1a8jkxqxbkyx9np2vyjrhgckd0zdzkx1286c20kw079a2ginhvs6"))
(patches (search-patches "openmpi-mtl-priorities.patch"))))))
(define openmpi-4-latest
(latest-version openmpi-upstream-4.1.8 gnu:openmpi-4))
(define-public openmpi-glicid
(package/inherit openmpi-4-latest
(name "openmpi-glicid")
(inputs (modify-inputs (package-inputs openmpi-4-latest)
(replace "slurm" slurm-glicid)))
))
(define-public openmpi-glicid-pmixv4
(package/inherit openmpi-glicid
(name "openmpi-glicid-pmixv4")
(arguments (substitute-keyword-arguments (package-arguments
openmpi-glicid)
((#:configure-flags flags)
#~(append #$flags
(list ;original flags has --with-pmix=internal, we should remove it but last --with-pmix is the one taken into account.
(string-append "--with-pmix="
#$(this-package-input
"openpmix"))
(string-append "--with-prrte="
#$(this-package-input "prrte"))) ;#$flags
))))
(inputs (modify-inputs (package-inputs openmpi-glicid)
(append openpmix) ; because we use pmix4 now, openpmi-4 defaults to internal pmix3
(append prrte) ;idem
))
))