diff options
Diffstat (limited to 'gnu/packages/mpi.scm')
-rw-r--r-- | gnu/packages/mpi.scm | 124 |
1 files changed, 63 insertions, 61 deletions
diff --git a/gnu/packages/mpi.scm b/gnu/packages/mpi.scm index 631a276282..30d0eac330 100644 --- a/gnu/packages/mpi.scm +++ b/gnu/packages/mpi.scm @@ -158,7 +158,7 @@ bind processes, and much more.") (define-public hwloc-2 (package (inherit hwloc-1) - (version "2.12.1") + (version "2.12.2") (source (origin (method url-fetch) (uri (string-append "https://download.open-mpi.org/release/hwloc/v" @@ -166,7 +166,7 @@ bind processes, and much more.") "/hwloc-" version ".tar.bz2")) (sha256 (base32 - "0sy63p99bz9xyaz1501mwv8i3qa1v1zwa7gynadry9c6pcl07a9q")))) + "182v0n2mpnbvdsw0gjnbmaj027k2jxmw7yphi89i9dgb1zbn2gjn")))) (native-inputs (modify-inputs (package-native-inputs hwloc-1) (append bash))) ;for completion tests @@ -356,18 +356,11 @@ software vendors, application developers and computer science researchers.") '(begin ;; XXX: 'delete-all-but' is copied from the turbovnc package. (define (delete-all-but directory . preserve) - (define (directory? x) - (and=> (stat x #f) - (compose (cut eq? 'directory <>) stat:type))) (with-directory-excursion directory - (let* ((pred - (negate (cut member <> (append '("." "..") preserve)))) + (let* ((pred (negate (cut member <> + (cons* "." ".." preserve)))) (items (scandir "." pred))) - (for-each (lambda (item) - (if (directory? item) - (delete-file-recursively item) - (delete-file item))) - items)))) + (for-each (cut delete-file-recursively <>) items)))) ;; Delete as many bundled libraries as permitted by the build ;; system. (delete-all-but "3rd-party" "treematch" "Makefile.in" "Makefile.am") @@ -381,8 +374,8 @@ software vendors, application developers and computer science researchers.") ;; As of Open MPI 5.0.X, PMIx is used to communicate ;; with SLURM, so SLURM'S PMI is no longer needed. (delete "slurm") - (append openpmix) ;for PMI support (launching via "srun") - (append prrte))) ;for PMI support (launching via "srun") + (append openpmix) ;for PMI support (launching via "srun") + (append prrte))) ;for PMI support (launching via "srun") (native-inputs (modify-inputs (package-native-inputs openmpi) (append python))) @@ -392,7 +385,7 @@ software vendors, application developers and computer science researchers.") #~(list #$(string-append "CFLAGS=-g -O2" " -Wno-error=incompatible-pointer-types") - "--enable-mpi-ext=affinity" ;cr doesn't work + "--enable-mpi-ext=affinity" ;cr doesn't work "--with-sge" "--disable-static" @@ -738,57 +731,66 @@ programmable API.") (define (make-scorep mpi) (package (name (string-append "scorep-" (package-name mpi))) - (version "3.1") + (version "9.0") (source (origin - (method url-fetch) - (uri (string-append - "http://www.vi-hps.org/upload/packages/scorep/scorep-" - version ".tar.gz")) - (sha256 - (base32 - "0h45357djna4dn9jyxx0n36fhhms3jrf22988m9agz1aw2jfivs9")) - (modules '((guix build utils))) - (snippet - ;; Remove bundled software. - '(begin - (for-each delete-file-recursively - '("vendor/opari2" "vendor/cube")) - #t)))) + (method url-fetch) + (uri (string-append + "https://perftools.pages.jsc.fz-juelich.de/cicd/scorep/tags/" + "scorep-" version "/scorep-" version ".tar.gz")) + (sha256 + (base32 + "15q93rc8wblbzqgh99rqzyq6fdp88mi6yziww05c6cbgrjs5s2jx")) + (modules '((guix build utils))) + (snippet + ;; Remove bundled software. + '(begin + (for-each delete-file-recursively + '("vendor/otf2" "vendor/opari2" + "vendor/cubelib" "vendor/cubew")))))) (build-system gnu-build-system) (inputs - `(("mpi" ,mpi) - ("papi" ,papi) - ("opari2" ,opari2) - ("libunwind" ,libunwind) - ("otf2" ,otf2) - ("cubelib" ,cube "lib") ;for lib, include - ("openmpi" ,openmpi) - ("zlib" ,zlib))) + (list mpi + papi + opari2 + libunwind + otf2 + cubelib + cubew + gotcha + libbfd + libiberty + openmpi + zlib)) (native-inputs - (list gfortran - flex - cube ;for cube-config - bison - python - doxygen - which)) + (list gfortran + flex + bison + python + doxygen + which)) (arguments - `(#:configure-flags - (list "--enable-shared" "--disable-static" - (string-append "--with-opari2=" - (assoc-ref %build-inputs "opari2")) - (string-append "--with-cube=" - (assoc-ref %build-inputs "cube"))) - #:parallel-tests? #f - #:make-flags '("V=1") - #:phases - (modify-phases %standard-phases - (add-after 'install 'licence - (lambda* (#:key outputs #:allow-other-keys) - (let ((doc (string-append (assoc-ref outputs "out") - "/share/doc/scorep"))) - (install-file "COPYING" doc) - #t)))))) + (list + #:configure-flags + #~(list "--enable-shared" "--disable-static" + "MPI_LIBS=-lmpi" "SHMEM_LIBS=-loshmem" + (string-append "--with-cubelib=" + #$(this-package-input "cubelib")) + (string-append "--with-cubew=" + #$(this-package-input "cubew")) + (string-append "--with-libbfd=" + #$(this-package-input "libbfd")) + (string-append "--with-otf2=" + #$(this-package-input "otf2")) + (string-append "--with-opari2=" + #$(this-package-input "opari2"))) + #:parallel-tests? #f + #:phases + #~(modify-phases %standard-phases + (add-after 'install 'licence + (lambda* (#:key outputs #:allow-other-keys) + (let ((doc (string-append (assoc-ref outputs "out") + "/share/doc/scorep"))) + (install-file "COPYING" doc))))))) (home-page "https://www.vi-hps.org/projects/score-p/") (synopsis "Performance measurement infrastructure for parallel code") (description |