guix-glicid/glicid/packages/mpi.scm
2025-02-18 16:15:40 +01:00

72 lines
2.6 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-4-latest
(name "openmpi-glicid-pmixv4")
(arguments (substitute-keyword-arguments (package-arguments
openmpi-4-latest)
((#: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-4-latest)
(append openpmix) ; because we use pmix4 now, openpmi-4 defaults to internal pmix3
(append prrte) ;idem
(replace "slurm" slurm-glicid)))
))