backporting master into devel (devel was behind master)

This commit is contained in:
Jean-François GUILLAUME 2022-05-10 10:00:46 +02:00
parent cc5cc2847f
commit 54560ad0ea
GPG key ID: 38751DAE145EFB5A
34 changed files with 10115 additions and 1803 deletions

View file

@ -1,138 +1,80 @@
(define-module (glicid packages mpi)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix build-system gnu)
#:use-module (guix build-system cmake)
; #:use-module (guix licenses)
#:use-module (gnu packages gawk)
#:use-module (gnu packages gcc)
#:use-module (gnu packages commencement)
#:use-module (guix build-system python)
#:use-module ((guix licenses) #:prefix license:)
#:use-module ((guix utils) #:select (target-64bit?))
#:use-module (gnu packages)
#:use-module (gnu packages admin)
#:use-module (gnu packages autotools)
#:use-module (gnu packages base)
#:use-module (gnu packages freeipmi)
#:use-module (gnu packages linux)
#:use-module (gnu packages mpi)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages parallel)
#:use-module (gnu packages storage)
#:use-module (gnu packages networking)
#:use-module (gnu packages gtk)
#:use-module (gnu packages python)
#:use-module (gnu packages python-science)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages readline)
#:use-module (gnu packages tcl)
#:use-module (gnu packages tls)
#:use-module (gnu packages commencement)
#:use-module (gnu packages gcc)
#:use-module (gnu packages chemistry)
#:use-module (gnu packages sphinx)
#:use-module (srfi srfi-1)
#:use-module (gnu packages mpi)
#:use-module (gnu packages sssd)
#:use-module (gnu packages fabric-management)
#:use-module (gnu packages benchmark)
#:use-module (gnu packages messaging)
#:use-module (gnu packages web)
#:use-module (gnu packages gnome)
#:use-module (gnu packages cluster)
#:use-module (gnu packages libevent)
#:use-module (gnu packages xorg)
#:use-module (gnu packages fontutils)
#:use-module (gnu packages flex)
#:use-module (gnu packages bison)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages autotools)
#:use-module (gnu packages fontutils)
#:use-module (guix build-system gnu)
#:use-module (gnu packages image)
#:use-module (gnu packages maths)
#:use-module (guix utils)
#:use-module (gnu packages cmake)
#:use-module (gnu packages pretty-print)
#:use-module (gnu packages boost)
#:use-module (gnu packages curl)
#:use-module (gnu packages cryptsetup)
#:use-module (gnu packages xml)
#:use-module (gnu packages admin)
#:use-module (gnu packages assembly)
#:use-module (gnu packages authentication)
#:use-module (gnu packages bdw-gc)
#:use-module (gnu packages boost)
#:use-module (gnu packages compression)
#:use-module (gnu packages crypto)
#:use-module (gnu packages cryptsetup)
#:use-module (gnu packages curl)
#:use-module (gnu packages databases)
#:use-module (gnu packages disk)
#:use-module (gnu packages gperf)
#:use-module (gnu packages jemalloc)
#:use-module (gnu packages linux)
#:use-module (gnu packages lua)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages networking)
#:use-module (gnu packages nss)
#:use-module (gnu packages openldap)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages sphinx)
#:use-module (gnu packages tls)
#:use-module (gnu packages web)
;; #:use-module (gnu packages glicid)
#:use-module (gnu packages pretty-print)
#:use-module (gnu packages virtualization)
#:use-module (glicid packages gcc)
#:use-module ((gnu packages mpi) #:prefix gnu:)
#:use-module (glicid packages linux)
#:use-module (glicid packages fabric-management)
#:use-module (glicid utils)
#:use-module (guix utils)
#:use-module (glicid packages parallel)
#:use-module (gnu packages)
)
(define-public glicid-openmpi
(package
(inherit openmpi)
(name "glicid-openpmi")
)
)
(define-public glicid-openmpi-gcc-11
(package
(inherit glicid-openmpi)
(name "glicid-openpmi-gcc-11")
(inputs `(("gcc-11", gcc-11)
("gfortran-11", gfortran-11)
("glicid-ucx-gcc-11",glicid-ucx-gcc-11)
("glicid-rdma-core-gcc-11",glicid-rdma-core-gcc-11)
("libfabric",glicid-libfabric-gcc-11)
,@(package-inputs openmpi)))
)
)
(define-public glicid-specific-openmpi
(define-public openmpi-upstream-4.1.2
(package
(inherit glicid-openmpi-gcc-11)
(name "glicid-specific-openmpi")
(inputs `(
("gcc",gcc-11)
("rdma-core",glicid-rdma-core-gcc-11)
("ucx",glicid-ucx-gcc-10)
("libfabric",glicid-libfabric-gcc-11)
; ("slurm", glicid-specific-slurm)
,@(package-inputs glicid-openmpi-gcc-11)))
(inherit gnu:openmpi)
(name "openmpi-upstream")
(version "4.1.2")
(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 "09xmlr4mfs02kwcf5cmdgkcdjj81fjwjmpa3rz2k28f3gz7wfy4v"))
(patches (search-patches "openmpi-mtl-priorities.patch"))
)
)
)
)
(define local-openmpi openmpi-upstream-4.1.2)
(define-public openmpi-latest (latest-version local-openmpi gnu:openmpi))
(define-public openmpi-glicid
(package
(inherit
(transform-package ((instead-of "slurm" slurm-glicid) openmpi-latest) "glicid")
)
)
)
(define-public openmpi-glicid-libfabric
(transform-package ((instead-of "libfabric" libfabric-latest) openmpi-glicid) "libfabric")
)
(define-public openmpi-glicid-rdma
(transform-package ((instead-of "rdma-core" rdma-core-latest) openmpi-glicid) "rdma-core")
)
(define-public openmpi-glicid-ucx
(transform-package ((instead-of "ucx" ucx-latest-glicid) openmpi-glicid) "ucx" )
)
(define-public openmpi-glicid-libfabric-rdma
(transform-package ((instead-of "rdma-core" rdma-core-latest) openmpi-glicid-libfabric) "rdma")
)
(define-public openmpi-glicid-libfabric-ucx
(transform-package ((instead-of "ucx" ucx-latest-glicid) openmpi-glicid-libfabric) "ucx")
)
(define-public openmpi-glicid-libfabric-rdma-ucx
(transform-package ((instead-of "ucx" ucx-latest-glicid) openmpi-glicid-libfabric-rdma) "ucx")
)
(define-public openmpi-glicid-libfabric-rdma-ucx-ccipl
(transform-package ((instead-of "slurm-glicid" slurm-ccipl) openmpi-glicid-libfabric-rdma-ucx) "ccipl")
)
(define openmpi-glicid-transform-gcc-11 (gcc11-instead-of-gcc openmpi-glicid))
(define-public openmpi-glicid-gcc-11
(package
(inherit openmpi-glicid-transform-gcc-11)
(name (string-append (package-name openmpi-glicid-transform-gcc-11) "-gcc-11" ))
)
)