mirror of
https://gitlab.univ-nantes.fr/glicid-public/glicid-non-free.git
synced 2025-04-28 17:28:35 +02:00
openmpi-glicid+cuda
This commit is contained in:
parent
eac20c83f2
commit
897de3e5ad
2 changed files with 92 additions and 1 deletions
|
@ -265,6 +265,71 @@ hwloc openmpi-glicid-waves openssh-sans-x ;; ssh is because openmpi use rsh and
|
|||
)
|
||||
)
|
||||
|
||||
(define-public gromacs-upstream+cuda-v3-2300
|
||||
(package
|
||||
(inherit gromacs-upstream+cuda-v2-2300)
|
||||
(name "gromacs-upstream+cuda-v3")
|
||||
(arguments
|
||||
(list #:configure-flags
|
||||
#~(list "-DGMX_DEVELOPER_BUILD=on" ; Needed to run tests
|
||||
;; Unbundling
|
||||
"-DGMX_USE_LMFIT=EXTERNAL"
|
||||
"-DGMX_BUILD_OWN_FFTW=off"
|
||||
"-DGMX_EXTERNAL_BLAS=on"
|
||||
"-DGMX_EXTERNAL_LAPACK=on"
|
||||
"-DGMX_EXTERNAL_TNG=on"
|
||||
"-DGMX_EXTERNAL_ZLIB=on"
|
||||
"-DGMX_HWLOC=ON"
|
||||
"-DGMX_MPI=ON"
|
||||
"-DGMX_GPU=CUDA"
|
||||
(string-append "-DCUDA_TOOLKIT_ROOT_DIR=" #$(this-package-input "cuda-toolkit"))
|
||||
"-DGMX_EXTERNAL_TINYXML2=on"
|
||||
(string-append "-DTinyXML2_DIR="
|
||||
#$(this-package-input "tinyxml2"))
|
||||
"-DGMX_USE_CUFFTMP=on"
|
||||
(string-append "-DcuFFTMp_ROOT=" #$(this-package-input "cuda-toolkit"))
|
||||
;; Workaround for cmake/FindSphinx.cmake version parsing that does
|
||||
;; not understand the guix-wrapped `sphinx-build --version' answer
|
||||
(string-append "-DSPHINX_EXECUTABLE_VERSION="
|
||||
#$(package-version python-sphinx)))
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'fixes
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
;; Still bundled: part of gromacs, source behind registration
|
||||
;; but free software anyways
|
||||
;;(delete-file-recursively "src/external/vmd_molfile")
|
||||
;; Still bundled: threads-based OpenMPI-compatible fallback
|
||||
;; designed to be bundled like that
|
||||
;;(delete-file-recursively "src/external/thread_mpi")
|
||||
;; Unbundling
|
||||
(delete-file-recursively "src/external/lmfit")
|
||||
(delete-file-recursively "src/external/clFFT")
|
||||
(delete-file-recursively "src/external/fftpack")
|
||||
(delete-file-recursively "src/external/build-fftw")
|
||||
(delete-file-recursively "src/external/tng_io")
|
||||
(delete-file-recursively "src/external/tinyxml2")
|
||||
(delete-file-recursively "src/external/googletest")
|
||||
(copy-recursively #$(package-source googletest)
|
||||
"src/external/googletest")
|
||||
;; This test warns about the build host hardware, disable
|
||||
(substitute* "src/gromacs/hardware/tests/hardwaretopology.cpp"
|
||||
(("TEST\\(HardwareTopologyTest, HwlocExecute\\)")
|
||||
"void __guix_disabled()"))
|
||||
(substitute* "src/gromacs/hardware/tests/hardwaretopology.cpp"
|
||||
(("TEST\\(HardwareTopologyTest, NumaCacheSelfconsistency\\)")
|
||||
"void __guix_disabledv2()")) ;; really not sure it's the best way…
|
||||
|
||||
|
||||
|
||||
|
||||
)))))
|
||||
|
||||
(inputs
|
||||
(modify-inputs (package-inputs gromacs)
|
||||
(append cuda
|
||||
hwloc openmpi-glicid-waves openssh-sans-x ;; ssh is because openmpi use rsh and tests use it !
|
||||
)))))
|
||||
|
||||
(define-public gromacs-upstream gromacs-upstream-2300)
|
||||
(define-public gromacs-upstream+cuda gromacs-upstream+cuda-2300)
|
||||
|
@ -272,4 +337,4 @@ hwloc openmpi-glicid-waves openssh-sans-x ;; ssh is because openmpi use rsh and
|
|||
|
||||
|
||||
|
||||
;gromacs-upstream+cuda-v2
|
||||
gromacs-upstream+cuda-v3-2300
|
||||
|
|
|
@ -17,6 +17,11 @@
|
|||
#:use-module (gnu packages geo)
|
||||
#:use-module (gnu packages python-check)
|
||||
#:use-module (guix-science-nonfree packages machine-learning)
|
||||
#:use-module (glicid packages mpi)
|
||||
#:use-module (guix-science-nonfree packages linux)
|
||||
#:use-module (guix-science-nonfree packages cuda)
|
||||
#:use-module (guix utils)
|
||||
|
||||
|
||||
)
|
||||
|
||||
|
@ -205,3 +210,24 @@
|
|||
!#
|
||||
|
||||
|
||||
(define-public openmpi-glicid+cuda
|
||||
(package
|
||||
(inherit openmpi-glicid)
|
||||
(name "openmpi-glicid+cuda")
|
||||
(arguments
|
||||
|
||||
(substitute-keyword-arguments (package-arguments openmpi-glicid)
|
||||
((#:configure-flags flags #~'())
|
||||
#~(append (list (string-append "--with-cuda="
|
||||
#$(this-package-input "cuda-toolkit"))
|
||||
"--enable-mpi-ext=cuda")
|
||||
#$flags))))
|
||||
(inputs (modify-inputs (package-inputs openmpi-glicid)
|
||||
(append cuda)
|
||||
(replace "psm2-upstream" psm2-cuda))) ; todo : psm2-upstream
|
||||
(synopsis "MPI-3 implementation, with CUDA support"))
|
||||
|
||||
|
||||
)
|
||||
|
||||
;openmpi-glicid+cuda
|
||||
|
|
Loading…
Add table
Reference in a new issue