guix-glicid/glicid/packages/benchmark.scm
2022-04-22 18:40:38 +02:00

141 lines
4 KiB
Scheme

(define-module (glicid packages benchmark)
#:use-module (guix build-system gnu)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module ((gnu packages benchmark) #:prefix gnu:)
#:use-module (gnu packages commencement)
#:use-module (gnu packages compression)
#:use-module (gnu packages mpi)
#:use-module (glicid packages mpi)
#:use-module (glicid packages gcc)
#:use-module (glicid utils)
)
(define-public intel-mpi-benchmarks/openmpi-2021.3
(package
(inherit gnu:intel-mpi-benchmarks/openmpi)
(name "intel-mpi-benchmarks-upstream")
(version "2021.3")
(source
(origin
(inherit (package-source gnu:intel-mpi-benchmarks/openmpi))
(method git-fetch)
(uri (git-reference
(url "https://github.com/intel/mpi-benchmarks")
(commit (string-append "IMB-v" version))
))
(file-name (git-file-name name version))
(sha256 (base32 "04kczch2hlfzbgk929vcxx480kc6raba8rbz246j7d26k1z1zh8h"))
)
)
)
)
(define-public intel-mpi-benchmarks/openmpi-2021.3-libfabric-rdma
(transform-package (
(instead-of "openmpi" openmpi-glicid-libfabric-rdma-ucx)
intel-mpi-benchmarks/openmpi-2021.3
) "fab+rdma+ucx")
)
(define intel-mpi-benchmark-transform-gcc-11
(gcc11-instead-of-gcc intel-mpi-benchmarks/openmpi-2021.3-libfabric-rdma)
)
(define intel-mpi-benchmarks/openmpi-2021.3-gcc-11
(package
(inherit intel-mpi-benchmark-transform-gcc-11)
(version (string-append (package-version intel-mpi-benchmark-transform-gcc-11) "-gcc-11" ))
)
)
(define-public intel-mpi-benchmarks/openmpi-2021.3-all-ccipl
(transform-package (
(instead-of "openmpi" openmpi-glicid-libfabric-rdma-ucx-ccipl)
intel-mpi-benchmarks/openmpi-2021.3
) "ccipl")
)
(define-public stream-benchmarks
(package
(name "stream-benchmarks")
(version "5.10-jh")
(source (origin
(method git-fetch)
(uri
(git-reference
(url "https://github.com/jeffhammond/STREAM.git")
(commit "HEAD")
)
)
(sha256 (base32 "1b5ka2h6rhp2103app6p0vq29y7qixcli9w874hb33y05ggjin8m"))
(file-name (string-append name "-" version "-checkout"))
))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(delete 'configure) ; no configure
(delete 'check) ; no check
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
;; Le Makefile du paquet ne fournit pas de règle « install »
;; alors on le fait nous-mêmes.
(let
((bin (string-append (assoc-ref outputs "out") "/bin")))
(install-file "stream_c.exe" bin)
(install-file "stream_f.exe" bin)
#t
)
)
)
)
)
)
(inputs `(
("gfortran-toolchain" ,gfortran-toolchain)
))
(synopsis "STREAM benchmark")
(description "STREAM benchmark")
(home-page "https://")
(license "")
)
)
;;defined by gricad / PA Boutier
(define-public osu-benchmarks
(package
(name "osu-benchmarks")
(version "5.8")
(source (origin
(method url-fetch)
(uri (string-append "https://mvapich.cse.ohio-state.edu/download/mvapich/osu-micro-benchmarks-" version ".tgz"))
(sha256 (base32 "19a4wg0msipibkxsi8i0c34d07512yfaj2k37dxg5541ysdw690f"))
))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'setenv
(lambda _
(setenv "CC" (which "mpicc"))
(setenv "CXX" (which "mpic++"))
#t
)
)
)
)
)
(propagated-inputs `(
("openmpi" ,openmpi)
))
(synopsis "OSU micro benchmarks")
(description "OSU micro benchmark for mpi")
(home-page "https://mvapich.cse.ohio-state.edu/benchmarks/")
(license license:gpl2+)
)
)