Merge branch 'master' into geant4
This commit is contained in:
@@ -1,13 +1,2 @@
|
||||
#!/usr/bin/env modbuild
|
||||
|
||||
pbuild::set_download_url "http://github.com/xianyi/$P/archive/v${V_PKG}.tar.gz"
|
||||
|
||||
pbuild::add_to_group 'Compiler'
|
||||
pbuild::install_docfiles 'LICENSE' 'README.md'
|
||||
#pbuild::set_supported_compilers 'gcc' 'intel' 'clang-macos'
|
||||
|
||||
pbuild::pre_configure() {
|
||||
pbuild::add_configure_args "-DCMAKE_BUILD_TYPE=Release"
|
||||
pbuild::add_configure_args "-DDYNAMIC_ARCH=ON"
|
||||
}
|
||||
|
||||
|
||||
@@ -1,9 +0,0 @@
|
||||
#!/usr/bin/env modbuild
|
||||
|
||||
pbuild::install_docfiles 'LICENSE' 'README.md'
|
||||
|
||||
pbuild::pre_configure() {
|
||||
pbuild::add_configure_args "-DCMAKE_BUILD_TYPE=Release"
|
||||
pbuild::add_configure_args "-DDYNAMIC_ARCH=ON"
|
||||
}
|
||||
|
||||
@@ -10,6 +10,12 @@ OpenBLAS:
|
||||
urls:
|
||||
- url: http://github.com/xianyi/$P/archive/v${V_PKG}.tar.gz
|
||||
name: OpenBLAS-${V_PKG}.tar.gz
|
||||
configure_args:
|
||||
- -DCMAKE_BUILD_TYPE=Release
|
||||
- -DDYNAMIC_ARCH=ON
|
||||
docfiles:
|
||||
- LICENSE
|
||||
- README.md
|
||||
|
||||
shasums:
|
||||
OpenBLAS-0.2.9.tar.gz: e899c70b8771896655765f5c64c00c990f8dd0fe569e96788d8c971a23ecb22a
|
||||
@@ -26,11 +32,24 @@ OpenBLAS:
|
||||
OpenBLAS-0.3.24.tar.gz: ceadc5065da97bd92404cac7254da66cc6eb192679cf1002098688978d4d5132
|
||||
|
||||
versions:
|
||||
0.3.28:
|
||||
config:
|
||||
group_deps:
|
||||
compiler:
|
||||
gcc: [12.3.0, 12.4.0, 13.3.0, 14.2.0]
|
||||
build_requires: [cmake/3.23.2]
|
||||
relstage: unstable
|
||||
variants:
|
||||
- systems: [rhel.*]
|
||||
overlay: devel
|
||||
- systems: [login.*.merlin7.psi.ch]
|
||||
overlay: Alps
|
||||
use_overlays: [PSI, Alps]
|
||||
0.3.24:
|
||||
config:
|
||||
group_deps:
|
||||
compiler:
|
||||
gcc: [12.3.0, 13.1.0]
|
||||
gcc: [12.3.0, 13.1.0, 13.2.0]
|
||||
build_requires: [cmake/3.23.2]
|
||||
relstage: unstable
|
||||
overlay: devel
|
||||
|
||||
9
Compiler/flair-geoviewer/build
Executable file
9
Compiler/flair-geoviewer/build
Executable file
@@ -0,0 +1,9 @@
|
||||
#!/usr/bin/env modbuild
|
||||
pbuild::compile() {
|
||||
make
|
||||
}
|
||||
|
||||
pbuild::install() {
|
||||
make DESTDIR="${FLAIR_PREFIX}" install
|
||||
}
|
||||
|
||||
24
Compiler/flair-geoviewer/files/config.yaml
Normal file
24
Compiler/flair-geoviewer/files/config.yaml
Normal file
@@ -0,0 +1,24 @@
|
||||
---
|
||||
# yamllint disable rule:line-length
|
||||
format: 1
|
||||
flair-geoviewer:
|
||||
defaults:
|
||||
group: Compiler
|
||||
overlay: base
|
||||
relstage: unstable
|
||||
compile_in_sourcetree: true
|
||||
systems: [rhel7, rhel8, rhel9]
|
||||
docfiles: [AUTHORS, LICENSE, NEWS, README]
|
||||
urls:
|
||||
- url: https://flair.web.cern.ch/flair/download/flair-geoviewer-3.3-1.tgz
|
||||
shasums:
|
||||
flair-geoviewer-3.3-1.tgz: 3c18747abac21907e90c3ed1759b73ca53c987f12216ba8ee9919a199c0dca26
|
||||
|
||||
versions:
|
||||
3.3.1:
|
||||
variants:
|
||||
- systems: [merlin-*, ra-*]
|
||||
group_deps:
|
||||
compiler: {gcc: [13.1.0]}
|
||||
relstage: unstable
|
||||
build_requires: ['flair/3.3.1', 'TclTk/8.6.9']
|
||||
18
Compiler/flair-geoviewer/modulefile
Normal file
18
Compiler/flair-geoviewer/modulefile
Normal file
@@ -0,0 +1,18 @@
|
||||
#%Module1.0
|
||||
|
||||
module-whatis "Flair by CERN: Advanced graphical user interface for particle simulation programs"
|
||||
module-url "http://flair.web.cern.ch/flair/index.html"
|
||||
module-license "[http://flair.web.cern.ch/flair/license.html](http://flair.web.cern.ch/flair/license.html)"
|
||||
module-maintainer "Elsa Germann <elsa.germann@psi.ch>"
|
||||
module-help "
|
||||
/fleə(r)/ n [U,C] natural or instinctive ability to do something well, to select or recognize what is best, more useful, etc.
|
||||
|
||||
flair is an advanced user friendly interface for several Monte Carlo codes. Originally it was developed for FLUKA, where its unique features strongly contributed to the success of both codes FLUKA and flair. From version 3 the interface was separated from the functionality permitting an easy integration of other simulation packages.
|
||||
|
||||
The current line of development is to make flair a unique tool for performing calculations with the same input using FLUKA, Geant4, PENELOPE, and other simulations engines.
|
||||
Presently is fully supporting the CERN FLUKA version and there is ongoing work to support:
|
||||
|
||||
Moira a Geant4 based application, permitting the user to run with Geant4 FLUKA equivalent inputs with the same geometry, materials, scoring,...
|
||||
|
||||
Other codes like MCNP, PHITS, PENELOPE could be added in the future.
|
||||
"
|
||||
9
Compiler/flair/build
Executable file
9
Compiler/flair/build
Executable file
@@ -0,0 +1,9 @@
|
||||
#!/usr/bin/env modbuild
|
||||
pbuild::compile() {
|
||||
make
|
||||
}
|
||||
|
||||
pbuild::install() {
|
||||
make DESTDIR="${PREFIX}" install
|
||||
}
|
||||
|
||||
23
Compiler/flair/files/config.yaml
Normal file
23
Compiler/flair/files/config.yaml
Normal file
@@ -0,0 +1,23 @@
|
||||
---
|
||||
# yamllint disable rule:line-length
|
||||
format: 1
|
||||
flair:
|
||||
defaults:
|
||||
group: Compiler
|
||||
overlay: base
|
||||
relstage: unstable
|
||||
compile_in_sourcetree: true
|
||||
systems: [rhel7, rhel8, rhel9]
|
||||
docfiles: [AUTHORS, LICENSE, NEWS, README]
|
||||
urls:
|
||||
- url: http://flair.web.cern.ch/flair/download/flair-3.3-1.tgz
|
||||
shasums:
|
||||
flair-3.3-1.tgz: 2bc9b02fd2d9ddb7eed96938314b9c73f0b6a844aa1af15728650eaf81e777bd
|
||||
|
||||
versions:
|
||||
3.3.1:
|
||||
variants:
|
||||
- systems: [merlin-*, ra-*]
|
||||
group_deps:
|
||||
compiler: {gcc: [13.1.0]}
|
||||
relstage: unstable
|
||||
18
Compiler/flair/modulefile
Normal file
18
Compiler/flair/modulefile
Normal file
@@ -0,0 +1,18 @@
|
||||
#%Module1.0
|
||||
|
||||
module-whatis "Flair by CERN: Advanced graphical user interface for particle simulation programs"
|
||||
module-url "http://flair.web.cern.ch/flair/index.html"
|
||||
module-license "[http://flair.web.cern.ch/flair/license.html](http://flair.web.cern.ch/flair/license.html)"
|
||||
module-maintainer "Elsa Germann <elsa.germann@psi.ch>"
|
||||
module-help "
|
||||
/fleə(r)/ n [U,C] natural or instinctive ability to do something well, to select or recognize what is best, more useful, etc.
|
||||
|
||||
flair is an advanced user friendly interface for several Monte Carlo codes. Originally it was developed for FLUKA, where its unique features strongly contributed to the success of both codes FLUKA and flair. From version 3 the interface was separated from the functionality permitting an easy integration of other simulation packages.
|
||||
|
||||
The current line of development is to make flair a unique tool for performing calculations with the same input using FLUKA, Geant4, PENELOPE, and other simulations engines.
|
||||
Presently is fully supporting the CERN FLUKA version and there is ongoing work to support:
|
||||
|
||||
Moira a Geant4 based application, permitting the user to run with Geant4 FLUKA equivalent inputs with the same geometry, materials, scoring,...
|
||||
|
||||
Other codes like MCNP, PHITS, PENELOPE could be added in the future.
|
||||
"
|
||||
16
Compiler/fluka4/build
Executable file
16
Compiler/fluka4/build
Executable file
@@ -0,0 +1,16 @@
|
||||
#!/usr/bin/env modbuild
|
||||
|
||||
pbuild::pre_prep(){
|
||||
SRC_DIR="${PREFIX}"
|
||||
BUILD_DIR="${PREFIX}"
|
||||
}
|
||||
|
||||
pbuild::compile(){
|
||||
cd src
|
||||
make -j "${JOBS}"
|
||||
}
|
||||
|
||||
pbuild::install() {
|
||||
:
|
||||
}
|
||||
|
||||
14
Compiler/fluka4/build-brond
Executable file
14
Compiler/fluka4/build-brond
Executable file
@@ -0,0 +1,14 @@
|
||||
#!/usr/bin/env modbuild
|
||||
|
||||
pbuild::pre_prep(){
|
||||
SRC_DIR="${PREFIX}"
|
||||
BUILD_DIR="${PREFIX}"
|
||||
}
|
||||
|
||||
pbuild::compile(){
|
||||
:
|
||||
}
|
||||
|
||||
pbuild::install() {
|
||||
:
|
||||
}
|
||||
14
Compiler/fluka4/build-cendl
Executable file
14
Compiler/fluka4/build-cendl
Executable file
@@ -0,0 +1,14 @@
|
||||
#!/usr/bin/env modbuild
|
||||
|
||||
pbuild::pre_prep(){
|
||||
SRC_DIR="${PREFIX}"
|
||||
BUILD_DIR="${PREFIX}"
|
||||
}
|
||||
|
||||
pbuild::compile(){
|
||||
:
|
||||
}
|
||||
|
||||
pbuild::install() {
|
||||
:
|
||||
}
|
||||
14
Compiler/fluka4/build-endf
Executable file
14
Compiler/fluka4/build-endf
Executable file
@@ -0,0 +1,14 @@
|
||||
#!/usr/bin/env modbuild
|
||||
|
||||
pbuild::pre_prep(){
|
||||
SRC_DIR="${PREFIX}"
|
||||
BUILD_DIR="${PREFIX}"
|
||||
}
|
||||
|
||||
pbuild::compile(){
|
||||
:
|
||||
}
|
||||
|
||||
pbuild::install() {
|
||||
:
|
||||
}
|
||||
15
Compiler/fluka4/build-flair
Executable file
15
Compiler/fluka4/build-flair
Executable file
@@ -0,0 +1,15 @@
|
||||
#!/usr/bin/env modbuild
|
||||
|
||||
pbuild::pre_prep(){
|
||||
SRC_DIR="${PREFIX}/flair"
|
||||
BUILD_DIR="${PREFIX}/flair"
|
||||
}
|
||||
|
||||
pbuild::compile(){
|
||||
make -j "${JOBS}"
|
||||
}
|
||||
|
||||
pbuild::install() {
|
||||
:
|
||||
}
|
||||
|
||||
15
Compiler/fluka4/build-flair-geoviewer
Executable file
15
Compiler/fluka4/build-flair-geoviewer
Executable file
@@ -0,0 +1,15 @@
|
||||
#!/usr/bin/env modbuild
|
||||
|
||||
pbuild::pre_prep(){
|
||||
SRC_DIR="${PREFIX}/geoviewer"
|
||||
BUILD_DIR="${PREFIX}/geoviewer"
|
||||
}
|
||||
|
||||
pbuild::compile(){
|
||||
make -j "${JOBS}"
|
||||
}
|
||||
|
||||
pbuild::install() {
|
||||
make DESTDIR="${PREFIX}/flair" install
|
||||
}
|
||||
|
||||
14
Compiler/fluka4/build-jeff
Executable file
14
Compiler/fluka4/build-jeff
Executable file
@@ -0,0 +1,14 @@
|
||||
#!/usr/bin/env modbuild
|
||||
|
||||
pbuild::pre_prep(){
|
||||
SRC_DIR="${PREFIX}"
|
||||
BUILD_DIR="${PREFIX}"
|
||||
}
|
||||
|
||||
pbuild::compile(){
|
||||
:
|
||||
}
|
||||
|
||||
pbuild::install() {
|
||||
:
|
||||
}
|
||||
14
Compiler/fluka4/build-jendl
Executable file
14
Compiler/fluka4/build-jendl
Executable file
@@ -0,0 +1,14 @@
|
||||
#!/usr/bin/env modbuild
|
||||
|
||||
pbuild::pre_prep(){
|
||||
SRC_DIR="${PREFIX}"
|
||||
BUILD_DIR="${PREFIX}"
|
||||
}
|
||||
|
||||
pbuild::compile(){
|
||||
:
|
||||
}
|
||||
|
||||
pbuild::install() {
|
||||
:
|
||||
}
|
||||
242
Compiler/fluka4/files/config.yaml
Normal file
242
Compiler/fluka4/files/config.yaml
Normal file
@@ -0,0 +1,242 @@
|
||||
---
|
||||
# yamllint disable rule:line-length
|
||||
format: 1
|
||||
fluka4:
|
||||
defaults:
|
||||
group: Compiler
|
||||
overlay: base
|
||||
relstage: unstable
|
||||
compile_in_sourcetree: true
|
||||
systems: [.*]
|
||||
download_dir: /afs/psi.ch/software/Pmodules/protected/fluka
|
||||
urls:
|
||||
- url: none
|
||||
name: fluka-4-${V_PKG}.x86-Linux-gfor9.tgz
|
||||
shasums:
|
||||
fluka-4-4.0.x86-Linux-gfor9.tgz: bcc303b96026b91f6d88d7a5ec274e31619562833330be93a992cd3c7e511eba
|
||||
|
||||
versions:
|
||||
4.0:
|
||||
config:
|
||||
group_deps:
|
||||
compiler: {gcc: [9.5.0]}
|
||||
relstage: unstable
|
||||
build_requires: []
|
||||
runtime_deps: ['TclTk/8.6.9', 'Python/3.9.10', 'gnuplot/5.4.10']
|
||||
sub_packages:
|
||||
- name: flair
|
||||
version: 3.3-1
|
||||
build_args:
|
||||
- --disable-cleanup
|
||||
- -f
|
||||
- name: flair-geoviewer
|
||||
version: 3.3-1
|
||||
build_args:
|
||||
- --disable-cleanup
|
||||
- -f
|
||||
- name: jeff
|
||||
version: 3.3-1-1
|
||||
build_args:
|
||||
- --disable-cleanup
|
||||
- -f
|
||||
- name: endf
|
||||
version: viii0-1.0
|
||||
build_args:
|
||||
- --disable-cleanup
|
||||
- -f
|
||||
- name: jendl
|
||||
version: 4.0u-1.0
|
||||
build_args:
|
||||
- --disable-cleanup
|
||||
- -f
|
||||
- name: cendl
|
||||
version: 31-1.0
|
||||
build_args:
|
||||
- --disable-cleanup
|
||||
- -f
|
||||
- name: brond
|
||||
version: 3.1-1.0
|
||||
build_args:
|
||||
- --disable-cleanup
|
||||
- -f
|
||||
|
||||
4.0_beta:
|
||||
config:
|
||||
group_deps:
|
||||
compiler: {gcc: [9.5.0]}
|
||||
relstage: unstable
|
||||
build_requires: []
|
||||
runtime_deps: ['TclTk/8.6.9', 'Python/3.9.10', 'gnuplot/5.4.10']
|
||||
sub_packages:
|
||||
- name: flair
|
||||
version: 3.x-3.5
|
||||
build_args:
|
||||
- --disable-cleanup
|
||||
- -f
|
||||
- name: flair-geoviewer
|
||||
version: 3.x-3.5
|
||||
build_args:
|
||||
- --disable-cleanup
|
||||
- -f
|
||||
- name: jeff
|
||||
version: 3.3-1-1
|
||||
build_args:
|
||||
- --disable-cleanup
|
||||
- -f
|
||||
- name: endf
|
||||
version: viii0-1.0
|
||||
build_args:
|
||||
- --disable-cleanup
|
||||
- -f
|
||||
- name: jendl
|
||||
version: 4.0u-1.0
|
||||
build_args:
|
||||
- --disable-cleanup
|
||||
- -f
|
||||
- name: cendl
|
||||
version: 31-1.0
|
||||
build_args:
|
||||
- --disable-cleanup
|
||||
- -f
|
||||
- name: brond
|
||||
version: 3.1-1.0
|
||||
build_args:
|
||||
- --disable-cleanup
|
||||
- -f
|
||||
|
||||
4.1_beta1:
|
||||
config:
|
||||
group: Tools
|
||||
build_requires: []
|
||||
runtime_deps: ['gcc/9.5.0', 'TclTk/8.6.9', 'Python/3.9.10', 'gnuplot/5.4.10']
|
||||
sub_packages:
|
||||
- name: flair
|
||||
version: 3.x-5
|
||||
build_args:
|
||||
- --disable-cleanup
|
||||
- -f
|
||||
- name: flair-geoviewer
|
||||
version: 3.x-5
|
||||
build_args:
|
||||
- --disable-cleanup
|
||||
- -f
|
||||
- name: jeff
|
||||
version: 3.3-1-1
|
||||
build_args:
|
||||
- --disable-cleanup
|
||||
- -f
|
||||
- name: endf
|
||||
version: viii0-1.0
|
||||
build_args:
|
||||
- --disable-cleanup
|
||||
- -f
|
||||
- name: jendl
|
||||
version: 4.0u-1.0
|
||||
build_args:
|
||||
- --disable-cleanup
|
||||
- -f
|
||||
- name: cendl
|
||||
version: 31-1.0
|
||||
build_args:
|
||||
- --disable-cleanup
|
||||
- -f
|
||||
- name: brond
|
||||
version: 3.1-1.0
|
||||
build_args:
|
||||
- --disable-cleanup
|
||||
- -f
|
||||
|
||||
jeff:
|
||||
type: sub_package
|
||||
defaults:
|
||||
urls:
|
||||
- url: https://flukafiles.web.cern.ch/flukafiles/neutron/fluka_pw_$P-$V.tar.gz
|
||||
strip_dirs: 0
|
||||
shasums:
|
||||
fluka_pw_jeff-3.3-1-1.tar.gz: 48810cab92bc79b241b306390f88b5fc1333363e85fdd0d9317263ba8e29ed8b
|
||||
versions:
|
||||
3.3-1-1:
|
||||
|
||||
endf:
|
||||
defaults:
|
||||
urls:
|
||||
- url: https://flukafiles.web.cern.ch/flukafiles/neutron/fluka_pw_$P-$V.tgz
|
||||
strip_dirs: 0
|
||||
shasums:
|
||||
fluka_pw_endf-viii0-1.0.tgz: e26433c9f548c4477b5c47a1929d33ce4a823fa326703d3a52dfa9161f9ae1b9
|
||||
versions:
|
||||
viii0-1.0:
|
||||
|
||||
jendl:
|
||||
defaults:
|
||||
urls:
|
||||
- url: https://flukafiles.web.cern.ch/flukafiles/neutron/fluka_pw_$P-$V.tgz
|
||||
strip_dirs: 0
|
||||
shasums:
|
||||
fluka_pw_jendl-4.0u-1.0.tgz: 21d5e2676ae26946df98869bd1d95f4f34edb53488fb40e5c1a8ef0c743f5f6e
|
||||
versions:
|
||||
4.0u-1.0:
|
||||
|
||||
cendl:
|
||||
defaults:
|
||||
urls:
|
||||
- url: https://flukafiles.web.cern.ch/flukafiles/neutron/fluka_pw_$P-$V.tgz
|
||||
strip_dirs: 0
|
||||
shasums:
|
||||
fluka_pw_cendl-31-1.0.tgz: d64916e35bfa6337463d01b3596ccd57b8f8b5c2e8879138ef7be14aff2b49d3
|
||||
versions:
|
||||
31-1.0:
|
||||
|
||||
brond:
|
||||
defaults:
|
||||
urls:
|
||||
- url: https://flukafiles.web.cern.ch/flukafiles/neutron/fluka_pw_$P-$V.tgz
|
||||
strip_dirs: 0
|
||||
shasums:
|
||||
fluka_pw_brond-3.1-1.0.tgz: c88ba7cde8ccf1c59b49e1138cc06cfd0b2b84f50a67d1dd9a29f104633b8a72
|
||||
versions:
|
||||
3.1-1.0:
|
||||
|
||||
flair:
|
||||
defaults:
|
||||
urls:
|
||||
- url: http://flair.web.cern.ch/flair/download/flair-$V.tgz
|
||||
shasums:
|
||||
flair-3.3-1.tgz: 2bc9b02fd2d9ddb7eed96938314b9c73f0b6a844aa1af15728650eaf81e777bd
|
||||
|
||||
versions:
|
||||
3.3-1:
|
||||
config:
|
||||
build_requires: ['gcc/9.5.0', 'Python/3.9.10']
|
||||
3.x-3.5:
|
||||
config:
|
||||
build_requires: ['gcc/9.5.0', 'Python/3.9.10']
|
||||
urls:
|
||||
- url: https://cernbox.cern.ch/remote.php/dav/public-files/m87gnQjIkI4dEls/flair-3.x-3.5.tgz
|
||||
3.x-5:
|
||||
config:
|
||||
build_requires: ['gcc/9.5.0', 'Python/3.9.10']
|
||||
urls:
|
||||
- url: https://cernbox.cern.ch/remote.php/dav/public-files/m87gnQjIkI4dEls/flair-3.x-5.tgz
|
||||
|
||||
flair-geoviewer:
|
||||
defaults:
|
||||
urls:
|
||||
- url: https://flair.web.cern.ch/flair/download/flair-geoviewer-$V.tgz
|
||||
shasums:
|
||||
flair-geoviewer-3.3-1.tgz: 3c18747abac21907e90c3ed1759b73ca53c987f12216ba8ee9919a199c0dca26
|
||||
|
||||
versions:
|
||||
3.3-1:
|
||||
config:
|
||||
build_requires: ['gcc/9.5.0', 'Python/3.9.10', 'TclTk/8.6.9']
|
||||
3.x-3.5:
|
||||
config:
|
||||
build_requires: ['gcc/9.5.0', 'Python/3.9.10', 'TclTk/8.6.9']
|
||||
urls:
|
||||
- url: https://cernbox.cern.ch/remote.php/dav/public-files/m87gnQjIkI4dEls/flair-geoviewer-3.x-3.5.tgz
|
||||
3.x-5:
|
||||
config:
|
||||
build_requires: ['gcc/9.5.0', 'Python/3.9.10', 'TclTk/8.6.9']
|
||||
urls:
|
||||
- url: https://cernbox.cern.ch/remote.php/dav/public-files/m87gnQjIkI4dEls/flair-geoviewer-3.x-5.tgz
|
||||
@@ -202,3 +202,13 @@ hdf5_serial:
|
||||
compiler:
|
||||
gcc: [6.5.0, 7.5.0, 8.5.0, 9.5.0, 10.3.0, 11.3.0, 12.1.0]
|
||||
relstage: stable
|
||||
|
||||
1.12.3:
|
||||
config:
|
||||
group_deps:
|
||||
compiler:
|
||||
gcc: [7.5.0, 8.5.0, 9.5.0, 10.4.0, 11.3.0, 12.1.0]
|
||||
relstage: unstable
|
||||
urls:
|
||||
- url: https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-${V_MAJOR}.${V_MINOR}/hdf5-$V/src/hdf5-$V.tar.bz2
|
||||
strip_dirs: 2
|
||||
|
||||
@@ -1,20 +1,2 @@
|
||||
#!/usr/bin/env modbuild
|
||||
|
||||
pbuild::add_to_group 'Compiler'
|
||||
|
||||
pbuild::prep() {
|
||||
:
|
||||
}
|
||||
|
||||
pbuild::configure() {
|
||||
:
|
||||
}
|
||||
|
||||
pbuild::compile() {
|
||||
:
|
||||
}
|
||||
|
||||
pbuild::install() {
|
||||
:
|
||||
}
|
||||
|
||||
|
||||
105
Compiler/impi/files/config.yaml
Normal file
105
Compiler/impi/files/config.yaml
Normal file
@@ -0,0 +1,105 @@
|
||||
---
|
||||
# yamllint disable rule:line-length
|
||||
format: 1
|
||||
impi:
|
||||
defaults:
|
||||
group: Compiler
|
||||
overlay: base
|
||||
relstage: stable
|
||||
build_functions:
|
||||
prep: []
|
||||
configure: []
|
||||
compile: []
|
||||
install: []
|
||||
|
||||
versions:
|
||||
22.2:
|
||||
variants:
|
||||
- systems: [merlin-.*\.psi.ch]
|
||||
group_deps:
|
||||
compiler:
|
||||
intel: [22.2]
|
||||
|
||||
22.1:
|
||||
variants:
|
||||
- systems: [merlin-.*\.psi.ch]
|
||||
group_deps:
|
||||
compiler:
|
||||
intel: [22.1]
|
||||
|
||||
21.4:
|
||||
variants:
|
||||
- systems: [merlin-.*\.psi.ch]
|
||||
group_deps:
|
||||
compiler:
|
||||
intel: [21.4]
|
||||
|
||||
20.4:
|
||||
variants:
|
||||
- systems: [merlin-.*\.psi.ch]
|
||||
group_deps:
|
||||
compiler:
|
||||
intel: [20.4]
|
||||
|
||||
19.4:
|
||||
variants:
|
||||
- systems: [merlin-.*\.psi.ch]
|
||||
relstage: deprecated
|
||||
group_deps:
|
||||
compiler:
|
||||
intel: [19.4]
|
||||
|
||||
19.3:
|
||||
variants:
|
||||
- systems: [merlin-.*\.psi.ch]
|
||||
relstage: deprecated
|
||||
group_deps:
|
||||
compiler:
|
||||
intel: [19.3]
|
||||
|
||||
18.4:
|
||||
variants:
|
||||
- systems: [merlin-.*\.psi.ch]
|
||||
relstage: deprecated
|
||||
group_deps:
|
||||
compiler:
|
||||
intel: [18.4]
|
||||
18.3:
|
||||
variants:
|
||||
- systems: [merlin-.*\.psi.ch]
|
||||
relstage: deprecated
|
||||
group_deps:
|
||||
compiler:
|
||||
intel: [18.3]
|
||||
|
||||
18.2:
|
||||
variants:
|
||||
- systems: [merlin-.*\.psi.ch]
|
||||
relstage: deprecated
|
||||
group_deps:
|
||||
compiler:
|
||||
intel: [18.2]
|
||||
|
||||
17.8:
|
||||
variants:
|
||||
- systems: [merlin-.*\.psi.ch]
|
||||
relstage: deprecated
|
||||
group_deps:
|
||||
compiler:
|
||||
intel: [17.8]
|
||||
|
||||
5.1:
|
||||
variants:
|
||||
- systems: [merlin-.*\.psi.ch]
|
||||
relstage: deprecated
|
||||
group_deps:
|
||||
compiler:
|
||||
intel: [16.1, 16.2, 16.3, 17.1]
|
||||
5.0:
|
||||
variants:
|
||||
- systems: [merlin-.*\.psi.ch]
|
||||
relstage: deprecated
|
||||
group_deps:
|
||||
compiler:
|
||||
intel: [15.2, 15.3]
|
||||
|
||||
@@ -1,16 +0,0 @@
|
||||
impi/5.0 deprecated intel/15.2
|
||||
impi/5.0 deprecated intel/15.3
|
||||
impi/5.1 deprecated intel/16.1
|
||||
impi/5.1 deprecated intel/16.2
|
||||
impi/5.1 deprecated intel/16.3
|
||||
impi/5.1 deprecated intel/17.1
|
||||
impi/17.8 deprecated intel/17.8
|
||||
impi/18.2 deprecated intel/18.2
|
||||
impi/18.3 deprecated intel/18.3
|
||||
impi/18.4 deprecated intel/18.4
|
||||
impi/19.3 deprecated intel/19.3
|
||||
impi/19.4 deprecated intel/19.4
|
||||
impi/20.4 stable intel/20.4
|
||||
impi/21.4 stable intel/21.4
|
||||
impi/22.1 stable intel/22.1
|
||||
impi/22.2 unstable intel/22.2
|
||||
@@ -1,28 +1,70 @@
|
||||
#!/usr/bin/env modbuild
|
||||
|
||||
pbuild::set_download_url "http://www.mpich.org/static/downloads/$V/$P-${V_PKG}.tar.gz"
|
||||
pbuild::add_to_group 'Compiler'
|
||||
pbuild::install_docfiles 'COPYRIGHT' 'README'
|
||||
|
||||
module use System
|
||||
|
||||
pbuild::pre_configure() {
|
||||
unset F90
|
||||
pbuild::add_configure_args "--enable-cxx"
|
||||
pbuild::add_configure_args "--enable-fortran"
|
||||
if pbuild::use_flag merlin; then
|
||||
MXM_DIR='/opt/mellanox/mxm/'
|
||||
pbuild::add_configure_args "--with-device=ch3:nemesis:mxm"
|
||||
pbuild::add_configure_args "--with-mxm=${MXM_DIR}"
|
||||
pbuild::add_configure_args "--without-x"
|
||||
#pbuild::add_configure_args "--with-slurm-include=/usr/include/slurm"
|
||||
#pbuild::add_configure_args "--with-slurm-lib=/usr/lib64"
|
||||
#pbuild::add_configure_args "--with-pmi=slurm"
|
||||
#pbuild::add_configure_args "--with-pm=no"
|
||||
pbuild::add_configure_args "--enable-gl=no"
|
||||
unset F90
|
||||
|
||||
pbuild::add_configure_args "--enable-shared"
|
||||
pbuild::add_configure_args "--enable-static"
|
||||
|
||||
if [[ -v CUDA_VERSION ]]; then
|
||||
std::info "Enabling CUDA ${CUDA_VERSION}."
|
||||
pbuild::add_configure_args "--with-cuda=${CUDA_HOME}"
|
||||
fi
|
||||
|
||||
if [[ -v HWLOC_VERSION ]]; then
|
||||
unset HWLOC_VERSION
|
||||
std::info "Enabling external hwloc ${HWLOC_PREFIX}."
|
||||
pbuild::add_configure_args "--with-hwloc=${HWLOC_PREFIX}"
|
||||
else
|
||||
pbuild::add_configure_args "--with-hwloc=embedded"
|
||||
fi
|
||||
|
||||
if [[ -v PMIX_VERSION ]]; then
|
||||
std::info "Enabling PMIX ${PMIX_VERSION}."
|
||||
unset PMIX_VERSION
|
||||
pbuild::add_configure_args "--with-pmix=${PMIX_PREFIX}"
|
||||
pbuild::add_configure_args "--with-pmi=pmix"
|
||||
fi
|
||||
|
||||
if pbuild::use_flag merlin7 && [[ ! -v LIBFABRIC_VERSION ]]; then
|
||||
if pkg-config --exists libfabric; then
|
||||
std::info "Get LIBFABRIC_VERSION via pkg-config"
|
||||
LIBFABRIC_PREFIX=$(pkg-config --variable=prefix libfabric)
|
||||
LIBFABRIC_VERSION="$(LIBFABRIC_PREFIX##*/)"
|
||||
fi
|
||||
fi
|
||||
if [[ "${COMPILER}" == 'gcc' ]] && (( ${COMPILER_VERSION%.*.*} == 10 )); then
|
||||
pbuild::add_configure_args "FFLAGS=-fallow-argument-mismatch"
|
||||
if [[ -v LIBFABRIC_VERSION ]]; then
|
||||
std::info "Enabling libfabric ${LIBFABRIC_VERSION}."
|
||||
if (( V_MAJOR < 4 )); then
|
||||
pbuild::add_configure_args "--with-ofi=${LIBFABRIC_PREFIX}"
|
||||
fi
|
||||
pbuild::add_configure_args "--with-libfabric=${LIBFABRIC_PREFIX}"
|
||||
fi
|
||||
|
||||
if [[ -v UCX_VERSION ]]; then
|
||||
std::info "Enabling UCX ${UCX_VERSION}."
|
||||
pbuild::add_configure_args "--with-ucx=${UCX_PREFIX}"
|
||||
fi
|
||||
|
||||
if [[ -v INTEL_VERSION ]]; then
|
||||
pbuild::add_configure_args "CC=icc"
|
||||
pbuild::add_configure_args "CXX=icpc"
|
||||
pbuild::add_configure_args "FC=ifort"
|
||||
pbuild::add_configure_args "F90=ifort"
|
||||
pbuild::add_configure_args "F77=ifort"
|
||||
pbuild::add_configure_args "LDFLAGS=-Wc,-static-intel,-O0"
|
||||
fi
|
||||
|
||||
if pbuild::use_flag slurm || \
|
||||
pbuild::use_flag merlin6 || \
|
||||
pbuild::use_flag merlin7; then
|
||||
std::info "Enabling SLURM."
|
||||
pbuild::add_configure_args "--with-slurm"
|
||||
fi
|
||||
}
|
||||
|
||||
# Local Variables:
|
||||
# mode: sh
|
||||
# sh-basic-offset: 8
|
||||
# tab-width: 8
|
||||
# End:
|
||||
|
||||
46
Compiler/mpich/files/config.yaml
Normal file
46
Compiler/mpich/files/config.yaml
Normal file
@@ -0,0 +1,46 @@
|
||||
---
|
||||
# yamllint disable rule:line-length
|
||||
format: 1
|
||||
mpich:
|
||||
defaults:
|
||||
group: Compiler
|
||||
overlay: base
|
||||
relstage: stable
|
||||
configure_args:
|
||||
- --enable-cxx
|
||||
- --enable-fortran
|
||||
docfiles: [COPYRIGHT, README]
|
||||
urls:
|
||||
- url: http://www.mpich.org/static/downloads/$V/$P-${V_PKG}.tar.gz
|
||||
shasums:
|
||||
mpich-3.3.2.tar.gz: 4bfaf8837a54771d3e4922c84071ef80ffebddbb6971a006038d91ee7ef959b9
|
||||
mpich-4.2.3.tar.gz: 7a019180c51d1738ad9c5d8d452314de65e828ee240bcb2d1f80de9a65be88a8
|
||||
|
||||
versions:
|
||||
4.2.3:
|
||||
variants:
|
||||
- systems: [.*.merlin7.psi.ch]
|
||||
relstage: unstable
|
||||
overlay: Alps
|
||||
use_overlays: [PSI]
|
||||
use_flags: [merlin7, slurm]
|
||||
group_deps:
|
||||
compiler: {gcc: [12.3.0]}
|
||||
build_requires: [hwloc/2.11.1, libfabric/1.15.2.0, patchelf/0.14.5]
|
||||
runtime_deps: [cuda/12.2.0]
|
||||
configure_args+:
|
||||
- --with-pm=hydra,gforker
|
||||
3.3.2:
|
||||
variants:
|
||||
- systems: [.*.merlin7.psi.ch]
|
||||
relstage: unstable
|
||||
overlay: Alps
|
||||
use_overlays: [PSI]
|
||||
use_flags: [merlin7, slurm]
|
||||
group_deps:
|
||||
compiler: {gcc: [8.4.0]}
|
||||
build_requires: [libfabric/1.15.2.0, patchelf/0.14.5]
|
||||
patch_files:
|
||||
- patch/mpich-v3.3.2.patch
|
||||
configure_args+:
|
||||
- --with-device=ch3:nemesis:ofi
|
||||
13
Compiler/mpich/patch/mpich-v3.3.2.patch
Normal file
13
Compiler/mpich/patch/mpich-v3.3.2.patch
Normal file
@@ -0,0 +1,13 @@
|
||||
diff --git a/src/pm/hydra/tools/bootstrap/external/slurm_query_node_list.c b/src/pm/hydra/tools/bootstrap/external/slurm_query_node_list.c
|
||||
index 9b35471f3..7b5dd782f 100644
|
||||
--- a/src/pm/hydra/tools/bootstrap/external/slurm_query_node_list.c
|
||||
+++ b/src/pm/hydra/tools/bootstrap/external/slurm_query_node_list.c
|
||||
@@ -26,7 +26,7 @@ static struct HYD_node *global_node_list = NULL;
|
||||
#if defined(HAVE_LIBSLURM)
|
||||
static HYD_status list_to_nodes(char *str)
|
||||
{
|
||||
- hostlist_t hostlist;
|
||||
+ hostlist_t *hostlist;
|
||||
char *host;
|
||||
int k = 0;
|
||||
HYD_status status = HYD_SUCCESS;
|
||||
@@ -1,51 +1,75 @@
|
||||
#!/usr/bin/env modbuild
|
||||
|
||||
# pbuild::set_download_url \
|
||||
# "http://www.open-mpi.org/software/ompi/v${V_MAJOR}.${V_MINOR}/downloads/openmpi-${V_PKG}.tar.bz2"
|
||||
|
||||
pbuild::set_download_url \
|
||||
"https://download.open-mpi.org/release/open-mpi/v${V_MAJOR}.${V_MINOR}/openmpi-${V_PKG}.tar.bz2"
|
||||
|
||||
pbuild::set_sha256sum "openmpi-3.1.2.tar.bz2:c654ed847f34a278c52a15c98add40402b4a90f0c540779f1ae6c489af8a76c5"
|
||||
|
||||
pbuild::add_to_group 'Compiler'
|
||||
pbuild::install_docfiles 'AUTHORS' 'LICENSE' 'NEWS' 'README'
|
||||
|
||||
|
||||
pbuild::pre_configure() {
|
||||
pbuild::add_configure_args "--prefix=${PREFIX}"
|
||||
pbuild::add_configure_args "--enable-mpi-cxx"
|
||||
pbuild::add_configure_args "--enable-mpi-cxx-seek"
|
||||
pbuild::add_configure_args "--enable-orterun-prefix-by-default"
|
||||
pbuild::add_configure_args "--enable-shared"
|
||||
pbuild::add_configure_args "--enable-static"
|
||||
pbuild::add_configure_args "--with-slurm=yes"
|
||||
if (( V_MAJOR < 5 )); then
|
||||
pbuild::add_configure_args "--enable-mpi-cxx"
|
||||
pbuild::add_configure_args "--enable-mpi-cxx-seek"
|
||||
pbuild::add_configure_args "--enable-orterun-prefix-by-default"
|
||||
fi
|
||||
if (( V_MAJOR < 5 )) && pbuild::use_flag 'slurm'; then
|
||||
pbuild::add_configure_args "--with-pmi=/usr"
|
||||
pbuild::add_configure_args "--with-pmi-libdir=/usr/lib64/slurmpmi"
|
||||
fi
|
||||
if (( V_MAJOR < 5 )) && pbuild::use_flag 'ra'; then
|
||||
pbuild::add_configure_args "--with-pmi=/usr"
|
||||
pbuild::add_configure_args "--with-pmi-libdir=/usr/lib64/slurm"
|
||||
fi
|
||||
if (( V_MAJOR >= 5 )); then
|
||||
pbuild::add_configure_args "--enable-prte-prefix-by-default"
|
||||
fi
|
||||
if (( V_MAJOR < 4 )); then
|
||||
pbuild::add_configure_args "--enable-mpi-f90"
|
||||
pbuild::add_configure_args "--enable-mpi-profile"
|
||||
pbuild::add_configure_args "--enable-smp-locks"
|
||||
fi
|
||||
if (( V_MAJOR >= 4 )); then
|
||||
pbuild::add_configure_args "--enable-mpi-fortran"
|
||||
fi
|
||||
if (( V_MAJOR == 4 )); then
|
||||
pbuild::add_configure_args "--without-verbs"
|
||||
fi
|
||||
|
||||
if [[ -v CUDA_VERSION ]]; then
|
||||
if [[ -v CUDA_VERSION ]]; then
|
||||
std::info "Enabling CUDA ${CUDA_VERSION}."
|
||||
pbuild::add_configure_args "--with-cuda=${CUDA_HOME}"
|
||||
if (( V_MAJOR >= 5 )); then
|
||||
pbuild::add_configure_args "--with-cuda-libdir=${CUDA_HOME}/lib64/stubs"
|
||||
fi
|
||||
fi
|
||||
|
||||
if [[ -v HWLOC_VERSION ]]; then
|
||||
unset HWLOC_VERSION
|
||||
std::info "Enabling external hwloc ${HWLOC_PREFIX}."
|
||||
pbuild::add_configure_args "--with-hwloc=${HWLOC_PREFIX}"
|
||||
else
|
||||
pbuild::add_configure_args "--with-hwloc=internal"
|
||||
fi
|
||||
|
||||
if [[ -v LIBEVENT_VERSION ]]; then
|
||||
std::info "Enabling libevent ${LIBEVENT_VERSION}."
|
||||
pbuild::add_configure_args "--with-libevent=${LIBEVENT_PREFIX}"
|
||||
fi
|
||||
|
||||
if [[ -v PMIX_VERSION ]]; then
|
||||
std::info "Enabling PMIX ${PMIX_VERSION}."
|
||||
unset PMIX_VERSION
|
||||
pbuild::add_configure_args "--with-pmix=${PMIX_PREFIX}"
|
||||
fi
|
||||
|
||||
if pbuild::use_flag merlin7 && [[ ! -v LIBFABRIC_VERSION ]]; then
|
||||
if pkg-config --exists libfabric; then
|
||||
std::info "Get LIBFABRIC_VERSION via pkg-config"
|
||||
LIBFABRIC_PREFIX=$(pkg-config --variable=prefix libfabric)
|
||||
LIBFABRIC_VERSION="$(LIBFABRIC_PREFIX##*/)"
|
||||
fi
|
||||
fi
|
||||
if [[ -v LIBFABRIC_VERSION ]]; then
|
||||
std::info "Enabling libfabric ${LIBFABRIC_VERSION}."
|
||||
pbuild::add_configure_args "--with-ofi=${LIBFABRIC_PREFIX}"
|
||||
fi
|
||||
|
||||
|
||||
if [[ -v UCX_VERSION ]]; then
|
||||
std::info "Enabling UCX ${UCX_VERSION}."
|
||||
pbuild::add_configure_args "--with-ucx=${UCX_PREFIX}"
|
||||
fi
|
||||
|
||||
@@ -55,56 +79,78 @@ pbuild::pre_configure() {
|
||||
pbuild::add_configure_args "FC=ifort"
|
||||
pbuild::add_configure_args "F90=ifort"
|
||||
pbuild::add_configure_args "F77=ifort"
|
||||
pbuild::add_configure_args "LDFLAGS=-Wc,-static-intel,-O0"
|
||||
# -O0 was probably added for enabling debugging:
|
||||
# pbuild::add_configure_args "LDFLAGS=-Wc,-static-intel,-O0"
|
||||
pbuild::add_configure_args "LDFLAGS=-Wc,-static-intel"
|
||||
fi
|
||||
|
||||
if pbuild::use_flag slurm || pbuild::use_flag dgx || pbuild::use_flag merlin6; then
|
||||
pbuild::add_configure_args "--with-gpfs=/usr/lpp/mmfs"
|
||||
pbuild::add_configure_args "--with-pmi"
|
||||
# pbuild::add_configure_args "--with-pmi-libdir=/usr/lib64/"
|
||||
|
||||
if pbuild::use_flag "libpmix"; then
|
||||
pbuild::add_configure_args "--enable-install-libpmix"
|
||||
fi
|
||||
fi
|
||||
|
||||
local version
|
||||
(( version = (${V_MAJOR} * 100 + ${V_MINOR}) * 100 + V_PATCHLVL ))
|
||||
if (( V_MAJOR < 4 )); then
|
||||
pbuild::add_configure_args "--enable-mpi-f90"
|
||||
pbuild::add_configure_args "--enable-mpi-profile"
|
||||
pbuild::add_configure_args "--enable-smp-locks"
|
||||
elif (( V_MAJOR >= 4 )); then
|
||||
pbuild::add_configure_args "--enable-mpi-fortran"
|
||||
pbuild::add_configure_args "--without-verbs"
|
||||
if pbuild::use_flag slurm || \
|
||||
pbuild::use_flag dgx || \
|
||||
pbuild::use_flag merlin6 || \
|
||||
pbuild::use_flag merlin7; then
|
||||
std::info "Enabling SLURM."
|
||||
pbuild::add_configure_args "--with-slurm=yes"
|
||||
fi
|
||||
if pbuild::use_flag dgx || pbuild::use_flag merlin6 || pbuild::use_flag "gpfs"; then
|
||||
std::info "Enabling GPFS."
|
||||
pbuild::add_configure_args "--with-gpfs=/usr/lpp/mmfs"
|
||||
fi
|
||||
|
||||
if pbuild::use_flag "libpmix"; then
|
||||
std::info "Enabling install of libpmix."
|
||||
pbuild::add_configure_args "--enable-install-libpmix"
|
||||
fi
|
||||
}
|
||||
|
||||
pbuild::post_install_no_slurm() {
|
||||
if ! pbuild::use_flag slurm && \
|
||||
! pbuild::use_flag dgx && \
|
||||
! pbuild::use_flag merlin6 && \
|
||||
! pbuild::use_flag merlin7; then
|
||||
mkdir -p "${PREFIX}/lib/fallback"
|
||||
local -r binary=$(ls "${PREFIX}"/lib/libmpi.so.*.*.*)
|
||||
pbuild::install_shared_libs "${binary}" "${PREFIX}/lib/fallback" '/libuc[mpst].so'
|
||||
pbuild::install_shared_libs "${binary}" "${PREFIX}/lib/fallback" '/libuct_ib.so.0'
|
||||
pbuild::install_shared_libs "${binary}" "${PREFIX}/lib/fallback" '/libnuma.so'
|
||||
pbuild::install_shared_libs "${binary}" "${PREFIX}/lib/fallback" '/libibverbs.so'
|
||||
pbuild::install_shared_libs "${binary}" "${PREFIX}/lib/fallback" '/librdmacm.so'
|
||||
pbuild::install_shared_libs "${binary}" "${PREFIX}/lib/fallback" '/libpmi.so'
|
||||
pbuild::install_shared_libs "${binary}" "${PREFIX}/lib/fallback" '/libpmi2.so'
|
||||
pbuild::install_shared_libs "${binary}" "${PREFIX}/lib/fallback" '/libpmi2.so'
|
||||
fi
|
||||
}
|
||||
|
||||
pbuild::post_install() {
|
||||
if ! pbuild::use_flag slurm && ! pbuild::use_flag dgx && ! pbuild::use_flag merlin6; then
|
||||
mkdir -p "${PREFIX}/lib/fallback"
|
||||
local -r binary=$(ls "${PREFIX}"/lib/libmpi.so.*.*.*)
|
||||
pbuild::install_shared_libs "${binary}" "${PREFIX}/lib/fallback" '/libuc[mpst].so'
|
||||
pbuild::install_shared_libs "${binary}" "${PREFIX}/lib/fallback" '/libuct_ib.so.0'
|
||||
pbuild::install_shared_libs "${binary}" "${PREFIX}/lib/fallback" '/libnuma.so'
|
||||
pbuild::install_shared_libs "${binary}" "${PREFIX}/lib/fallback" '/libibverbs.so'
|
||||
pbuild::install_shared_libs "${binary}" "${PREFIX}/lib/fallback" '/librdmacm.so'
|
||||
pbuild::install_shared_libs "${binary}" "${PREFIX}/lib/fallback" '/libpmi.so'
|
||||
pbuild::install_shared_libs "${binary}" "${PREFIX}/lib/fallback" '/libpmi2.so'
|
||||
pbuild::install_shared_libs "${binary}" "${PREFIX}/lib/fallback" '/libpmi2.so'
|
||||
fi
|
||||
|
||||
if [[ -v CUDA_VERSION ]]; then
|
||||
echo "opal_warn_on_missing_libcuda = 0" >> ${PREFIX}/etc/openmpi-mca-params.conf
|
||||
grep -qxF "opal_warn_on_missing_libcuda = 0" ${PREFIX}/etc/openmpi-mca-params.conf || \
|
||||
echo "opal_warn_on_missing_libcuda = 0" >> ${PREFIX}/etc/openmpi-mca-params.conf
|
||||
if (( V_MAJOR == 5 )); then
|
||||
grep -qxF "mca_base_component_show_load_errors = '^accelerator,rcache,btl/smcuda'" ${PREFIX}/etc/openmpi-mca-params.conf || \
|
||||
echo "mca_base_component_show_load_errors = '^accelerator,rcache,btl/smcuda'" >> ${PREFIX}/etc/openmpi-mca-params.conf
|
||||
grep -qxF "mca_base_component_show_load_errors = '^accelerator,rcache,btl/smcuda'" ${PREFIX}/etc/prte-mca-params.conf || \
|
||||
echo "mca_base_component_show_load_errors = '^accelerator,rcache,btl/smcuda'" >> ${PREFIX}/etc/prte-mca-params.conf
|
||||
fi
|
||||
fi
|
||||
|
||||
for FILE in $(find $PREFIX -type f \( ! -name "*.a" -and ! -name "*.mod" \) -exec grep -IL . "{}" \;)
|
||||
do
|
||||
OLD_RPATH=$(objdump -a -x $FILE | grep RPATH | awk '{print $2}')
|
||||
NEW_RPATH=$(echo $OLD_RPATH | sed 's/:\/usr\/lib64:/:/g')
|
||||
if [[ "${OLD_RPATH}" != "${NEW_RPATH}" ]]; then
|
||||
patchelf --force-rpath --set-rpath "${NEW_RPATH}" "${FILE}"
|
||||
fi
|
||||
done
|
||||
local fname=''
|
||||
local old_rpath=''
|
||||
local new_rpath=''
|
||||
# remove '/usr/lib64' from RPATH/RUNPATH
|
||||
while read fname; do
|
||||
old_rpath=$(objdump -x "${fname}" | awk '/RPATH|RUNPATH/ {print $2}')
|
||||
new_rpath=$(echo "${old_rpath}" | sed 's/:\/usr\/lib64:/:/g')
|
||||
if [[ "${old_rpath}" != "${new_rpath}" ]]; then
|
||||
patchelf \
|
||||
--force-rpath \
|
||||
--set-rpath "${new_rpath}" \
|
||||
"${fname}"
|
||||
fi
|
||||
done < <(find "${PREFIX}" -type f \( ! -name "*.a" -and ! -name "*.mod" \) \
|
||||
-exec grep -IL . "{}" \;)
|
||||
}
|
||||
|
||||
# Local Variables:
|
||||
# mode: sh
|
||||
# sh-basic-offset: 8
|
||||
# tab-width: 8
|
||||
# End:
|
||||
|
||||
@@ -1,100 +0,0 @@
|
||||
#!/usr/bin/env modbuild
|
||||
|
||||
pbuild::install_docfiles 'AUTHORS' 'LICENSE' 'NEWS' 'README'
|
||||
|
||||
pbuild::pre_configure() {
|
||||
pbuild::add_configure_args "--prefix=${PREFIX}"
|
||||
pbuild::add_configure_args "--enable-mpi-cxx"
|
||||
pbuild::add_configure_args "--enable-mpi-cxx-seek"
|
||||
pbuild::add_configure_args "--enable-orterun-prefix-by-default"
|
||||
pbuild::add_configure_args "--enable-shared"
|
||||
pbuild::add_configure_args "--enable-static"
|
||||
pbuild::add_configure_args "--with-slurm=yes"
|
||||
|
||||
if [[ -v CUDA_VERSION ]]; then
|
||||
pbuild::add_configure_args "--with-cuda=${CUDA_HOME}"
|
||||
fi
|
||||
|
||||
if [[ -v HWLOC_VERSION ]]; then
|
||||
unset HWLOC_VERSION
|
||||
pbuild::add_configure_args "--with-hwloc=${HWLOC_PREFIX}"
|
||||
else
|
||||
pbuild::add_configure_args "--with-hwloc=internal"
|
||||
fi
|
||||
|
||||
if [[ -v LIBEVENT_VERSION ]]; then
|
||||
pbuild::add_configure_args "--with-libevent=${LIBEVENT_PREFIX}"
|
||||
fi
|
||||
|
||||
if [[ -v PMIX_VERSION ]]; then
|
||||
unset PMIX_VERSION
|
||||
pbuild::add_configure_args "--with-pmix=${PMIX_PREFIX}"
|
||||
fi
|
||||
|
||||
if [[ -v LIBFABRIC_VERSION ]]; then
|
||||
pbuild::add_configure_args "--with-ofi=${LIBFABRIC_PREFIX}"
|
||||
fi
|
||||
|
||||
if [[ -v UCX_VERSION ]]; then
|
||||
pbuild::add_configure_args "--with-ucx=${UCX_PREFIX}"
|
||||
fi
|
||||
|
||||
if [[ -v INTEL_VERSION ]]; then
|
||||
pbuild::add_configure_args "CC=icc"
|
||||
pbuild::add_configure_args "CXX=icpc"
|
||||
pbuild::add_configure_args "FC=ifort"
|
||||
pbuild::add_configure_args "F90=ifort"
|
||||
pbuild::add_configure_args "F77=ifort"
|
||||
pbuild::add_configure_args "LDFLAGS=-Wc,-static-intel,-O0"
|
||||
fi
|
||||
|
||||
if pbuild::use_flag slurm || pbuild::use_flag dgx || pbuild::use_flag merlin6; then
|
||||
pbuild::add_configure_args "--with-gpfs=/usr/lpp/mmfs"
|
||||
pbuild::add_configure_args "--with-pmi"
|
||||
# pbuild::add_configure_args "--with-pmi-libdir=/usr/lib64/"
|
||||
|
||||
if pbuild::use_flag "libpmix"; then
|
||||
pbuild::add_configure_args "--enable-install-libpmix"
|
||||
fi
|
||||
fi
|
||||
|
||||
local version
|
||||
(( version = (${V_MAJOR} * 100 + ${V_MINOR}) * 100 + V_PATCHLVL ))
|
||||
if (( V_MAJOR < 4 )); then
|
||||
pbuild::add_configure_args "--enable-mpi-f90"
|
||||
pbuild::add_configure_args "--enable-mpi-profile"
|
||||
pbuild::add_configure_args "--enable-smp-locks"
|
||||
elif (( V_MAJOR >= 4 )); then
|
||||
pbuild::add_configure_args "--enable-mpi-fortran"
|
||||
pbuild::add_configure_args "--without-verbs"
|
||||
fi
|
||||
|
||||
}
|
||||
|
||||
pbuild::post_install() {
|
||||
if ! pbuild::use_flag slurm && ! pbuild::use_flag dgx && ! pbuild::use_flag merlin6; then
|
||||
mkdir -p "${PREFIX}/lib/fallback"
|
||||
local -r binary=$(ls "${PREFIX}"/lib/libmpi.so.*.*.*)
|
||||
pbuild::install_shared_libs "${binary}" "${PREFIX}/lib/fallback" '/libuc[mpst].so'
|
||||
pbuild::install_shared_libs "${binary}" "${PREFIX}/lib/fallback" '/libuct_ib.so.0'
|
||||
pbuild::install_shared_libs "${binary}" "${PREFIX}/lib/fallback" '/libnuma.so'
|
||||
pbuild::install_shared_libs "${binary}" "${PREFIX}/lib/fallback" '/libibverbs.so'
|
||||
pbuild::install_shared_libs "${binary}" "${PREFIX}/lib/fallback" '/librdmacm.so'
|
||||
pbuild::install_shared_libs "${binary}" "${PREFIX}/lib/fallback" '/libpmi.so'
|
||||
pbuild::install_shared_libs "${binary}" "${PREFIX}/lib/fallback" '/libpmi2.so'
|
||||
pbuild::install_shared_libs "${binary}" "${PREFIX}/lib/fallback" '/libpmi2.so'
|
||||
fi
|
||||
|
||||
if [[ -v CUDA_VERSION ]]; then
|
||||
echo "opal_warn_on_missing_libcuda = 0" >> ${PREFIX}/etc/openmpi-mca-params.conf
|
||||
fi
|
||||
|
||||
for FILE in $(find $PREFIX -type f \( ! -name "*.a" -and ! -name "*.mod" \) -exec grep -IL . "{}" \;)
|
||||
do
|
||||
OLD_RPATH=$(objdump -a -x $FILE | grep RPATH | awk '{print $2}')
|
||||
NEW_RPATH=$(echo $OLD_RPATH | sed 's/:\/usr\/lib64:/:/g')
|
||||
if [[ "${OLD_RPATH}" != "${NEW_RPATH}" ]]; then
|
||||
patchelf --force-rpath --set-rpath "${NEW_RPATH}" "${FILE}"
|
||||
fi
|
||||
done
|
||||
}
|
||||
@@ -6,10 +6,11 @@ openmpi:
|
||||
group: Compiler
|
||||
overlay: base
|
||||
relstage: stable
|
||||
systems: [rhel7, rhel8, rhel9]
|
||||
configure_args:
|
||||
- --enable-shared
|
||||
docfiles: [AUTHORS, LICENSE, NEWS, README]
|
||||
urls:
|
||||
- url: https://download.open-mpi.org/release/open-mpi/v${V_MAJOR}.${V_MINOR}/openmpi-${V_PKG}.tar.bz
|
||||
- url: https://download.open-mpi.org/release/open-mpi/v${V_MAJOR}.${V_MINOR}/openmpi-${V_PKG}.tar.bz2
|
||||
shasums:
|
||||
openmpi-1.10.0.tar.bz2: 26b432ce8dcbad250a9787402f2c999ecb6c25695b00c9c6ee05a306c78b6490
|
||||
openmpi-1.10.4.tar.bz2: fb3c0c4c77896185013b6091b306d29ba592eb40d8395533da5c8bc300d922db
|
||||
@@ -52,8 +53,110 @@ openmpi:
|
||||
openmpi-4.1.3.tar.bz2: 3d81d04c54efb55d3871a465ffb098d8d72c1f48ff1cbaf2580eb058567c0a3b
|
||||
openmpi-4.1.4.tar.bz2: 92912e175fd1234368c8730c03f4996fe5942e7479bb1d10059405e7f2b3930d
|
||||
openmpi-4.1.5.tar.bz2: a640986bc257389dd379886fdae6264c8cfa56bc98b71ce3ae3dfbd8ce61dbe3
|
||||
openmpi-4.1.6.tar.bz2: f740994485516deb63b5311af122c265179f5328a0d857a567b85db00b11e415
|
||||
openmpi-5.0.5.tar.bz2: 6588d57c0a4bd299a24103f4e196051b29e8b55fbda49e11d5b3d32030a32776
|
||||
|
||||
versions:
|
||||
# 5.0.6:
|
||||
# config:
|
||||
# configure_args+:
|
||||
# - --enable-mpi1-compatibility
|
||||
# - --enable-static=no
|
||||
# variants:
|
||||
# - systems: [.*.merlin7.psi.ch]
|
||||
# relstage: unstable
|
||||
# overlay: Alps
|
||||
# use_overlays: [PSI, Alps]
|
||||
# group_deps:
|
||||
# compiler: {gcc: [14.2.0,12.3.0,8.5.0], intelcc: [22.2]}
|
||||
# build_requires: [hwloc/2.11.1, patchelf/0.14.5]
|
||||
# runtime_deps: [cuda/12.2.0, libfabric/1.15.2.0, pmix/5.0.4]
|
||||
# configure_args+:
|
||||
# - --with-cxi
|
||||
# - --with-lustre
|
||||
# - --with-slingshot
|
||||
# use_flags: [merlin7, slurm]
|
||||
|
||||
5.0.5:
|
||||
config:
|
||||
configure_args+:
|
||||
- --enable-mpi1-compatibility
|
||||
- --enable-static=no
|
||||
variants:
|
||||
- systems: [.*.merlin7.psi.ch]
|
||||
relstage: stable
|
||||
overlay: Alps
|
||||
use_overlays: [PSI, Alps]
|
||||
group_deps:
|
||||
compiler: {gcc: [14.2.0, 12.3.0, 8.5.0],
|
||||
intelcc: [22.2]}
|
||||
build_requires: [hwloc/2.11.1, patchelf/0.14.5]
|
||||
runtime_deps: [cuda/12.2.0, libfabric/1.15.2.0, pmix/5.0.3]
|
||||
configure_args+:
|
||||
- --with-cxi
|
||||
- --with-lustre
|
||||
- --with-slingshot
|
||||
use_flags: [merlin7, slurm]
|
||||
|
||||
4.1.6:
|
||||
config:
|
||||
build_variants: first_match
|
||||
variants:
|
||||
- systems: [merlin-.*]
|
||||
suffix: _slurm
|
||||
use_flags: [merlin6, gpfs]
|
||||
relstage: stable
|
||||
overlay: base
|
||||
group_deps:
|
||||
compiler: {gcc: [9.5.0, 10.4.0, 11.4.0, 12.3.0, 12.4.0, 13.1.0, 13.2.0, 14.2.0]}
|
||||
build_requires:
|
||||
- pmix/4.2.4
|
||||
- ucx/1.14.1_slurm
|
||||
- libfabric/1.18.0
|
||||
- hwloc/2.9.1
|
||||
- patchelf/0.14.5
|
||||
runtime_deps: [cuda/12.1.1]
|
||||
configure_args+:
|
||||
- CFLAGS=-g -O0
|
||||
- LDFLAGS=-g
|
||||
- --with-gpfs=/usr/lpp/mmfs
|
||||
- --with-pmi=/usr
|
||||
- --enable-static
|
||||
|
||||
- systems: [ra-.*]
|
||||
suffix: _ra
|
||||
use_flags: [ra, gpfs]
|
||||
group_deps:
|
||||
compiler: {gcc: [9.5.0, 10.4.0, 11.4.0, 12.3.0, 13.1.0]}
|
||||
build_requires: [pmix/4.2.4, ucx/1.14.1_slurm, hwloc/2.9.1, patchelf/0.14.5]
|
||||
runtime_deps: [cuda/12.1.1]
|
||||
configure_args+:
|
||||
- --with-gpfs=/usr/lpp/mmfs
|
||||
- --with-pmi=/usr
|
||||
- --enable-static
|
||||
|
||||
- systems: [.*.merlin7.psi.ch]
|
||||
relstage: stable
|
||||
overlay: Alps
|
||||
group_deps:
|
||||
compiler: {gcc: [12.3.0, 13.3.0, 14.2.0], intelcc: [22.2]}
|
||||
build_requires: [hwloc/2.11.1, patchelf/0.14.5]
|
||||
runtime_deps: [cuda/12.2.0, libfabric/1.15.2.0, pmix/4.2.9]
|
||||
configure_args+:
|
||||
- --enable-mpi1-compatibility
|
||||
- --enable-static=no
|
||||
- --with-lustre
|
||||
use_overlays: [PSI, Alps]
|
||||
use_flags: [merlin7, slurm]
|
||||
|
||||
4.1.4:
|
||||
variants:
|
||||
- systems: [merlin-*, ra-*]
|
||||
relstage: unstable
|
||||
suffix: _slurm
|
||||
group_deps:
|
||||
compiler: {nvhpc: [24.3_cuda_12.3, 23.5_cuda_12.1]}
|
||||
build_requires: [pmix/4.2.4, ucx/1.14.1_slurm, libfabric/1.18.0, hwloc/2.9.1, patchelf/0.14.5]
|
||||
|
||||
4.1.5:
|
||||
variants:
|
||||
|
||||
50
Compiler/openmpi/files/variants.merlin7
Normal file
50
Compiler/openmpi/files/variants.merlin7
Normal file
@@ -0,0 +1,50 @@
|
||||
openmpi/3.1.4_merlin6 deprecated gcc/{7.4.0,8.3.0}
|
||||
|
||||
openmpi/3.1.5_merlin6 deprecated gcc/{7.3.0,7.4.0,8.3.0,9.2.0}
|
||||
openmpi/3.1.5_merlin6 deprecated intel/{15.2,17.4,18.4}
|
||||
|
||||
openmpi/3.1.5-1_merlin6 deprecated gcc/{7.3.0,7.4.0,8.3.0,9.2.0}
|
||||
openmpi/3.1.5-1_merlin6 deprecated intel/{15.2,17.4,18.4}
|
||||
|
||||
openmpi/2.1.6_slurm deprecated gcc/{4.9.4,5.5.0,6.5.0,7.4.0,8.3.0,9.2.0}
|
||||
openmpi/2.1.6_slurm deprecated intel/{15.2,17.4,18.4}
|
||||
|
||||
openmpi/3.0.5_slurm deprecated gcc/{4.9.4,5.5.0,6.5.0,7.4.0,8.3.0,9.2.0}
|
||||
openmpi/3.0.5_slurm deprecated intel/{15.2,17.4,18.4}
|
||||
|
||||
openmpi/3.1.6_slurm deprecated gcc/{4.9.4,5.5.0,6.5.0}
|
||||
openmpi/3.1.6_slurm stable gcc/{7.5.0,8.4.0,9.3.0}
|
||||
openmpi/3.1.6_slurm deprecated intel/{15.2,17.4,18.4,20.1}
|
||||
openmpi/3.1.6_slurm deprecated intel/20.4 cuda/11.1.0
|
||||
|
||||
openmpi/4.0.3_slurm deprecated gcc/{4.9.4,5.5.0,6.5.0,7.5.0,8.4.0,9.3.0}
|
||||
openmpi/4.0.3_slurm deprecated intel/{15.2,17.4,18.4,20.1}
|
||||
|
||||
openmpi/4.0.4_slurm deprecated gcc/{4.9.4,5.5.0,6.5.0,7.5.0,8.4.0,9.3.0}
|
||||
openmpi/4.0.4_slurm deprecated intel/{15.2,17.4}
|
||||
openmpi/4.0.4_slurm deprecated intel/{18.4,20.1}
|
||||
|
||||
openmpi/4.0.5_slurm stable gcc/9.2.0 cuda/11.0.3
|
||||
openmpi/4.0.5_slurm stable gcc/{8.4.0,9.3.0} cuda/11.1.0
|
||||
openmpi/4.0.5_slurm stable intel/20.4 cuda/11.1.0
|
||||
|
||||
openmpi/4.0.5-1_slurm stable gcc/{8.4.0,9.3.0,10.2.0,10.3.0} cuda/11.2.2 b:ucx/1.10.0-1_slurm
|
||||
openmpi/4.0.5-2_slurm stable gcc/10.2.0 cuda/11.3.0 b:ucx/1.11.0_slurm
|
||||
|
||||
openmpi/4.0.7_slurm stable gcc/10.2.0 cuda/11.5.1 b:ucx/1.11.2-2_slurm
|
||||
openmpi/4.0.7-1_slurm stable gcc/10.2.0 cuda/11.4.3 b:ucx/1.11.2-1_slurm
|
||||
|
||||
openmpi/4.1.1_slurm unstable gcc/10.2.0 cuda/11.3.0 b:ucx/1.11.2_slurm
|
||||
openmpi/4.1.1-1_slurm unstable gcc/10.2.0 cuda/11.3.0 b:ucx/1.10.0_slurm
|
||||
|
||||
openmpi/4.1.3_slurm stable gcc/{9.3.0,10.3.0,11.2.0} cuda/11.5.1 b:ucx/1.12.1_slurm
|
||||
openmpi/4.1.4_slurm stable gcc/10.4.0 cuda/11.5.1 b:ucx/1.12.1_slurm
|
||||
|
||||
openmpi/4.1.5_slurm stable gcc/{9.5.0,10.4.0,11.4.0,12.3.0,13.1.0} b:cuda/12.1.1 b:pmix/4.2.4 b:ucx/1.14.1_slurm b:libfabric/1.18.0 b:hwloc/2.9.1 b:patchelf/0.14.5
|
||||
openmpi/4.1.5_slurm unstable intelcc/22.2 b:cuda/12.1.1 b:pmix/4.2.4 b:ucx/1.14.1_slurm b:libfabric/1.18.0 b:hwloc/2.9.1 b:patchelf/0.14.5
|
||||
|
||||
openmpi/4.0.5-1_dgx deprecated gcc/{8.4.0,9.3.0,10.2.0} cuda/11.2.2 b:ucx/1.10.0-1_dgx
|
||||
openmpi/4.1.0-1_dgx deprecated gcc/10.2.0 cuda/11.2.2 b:ucx/1.10.0-1_dgx
|
||||
|
||||
|
||||
openmpi/4.0.4_slurm_libpmix deprecated gcc/9.3.0
|
||||
@@ -44,3 +44,12 @@ if { $libcuda eq "" } {
|
||||
prepend-path LD_LIBRARY_PATH $PREFIX/lib/fallback/cuda
|
||||
}
|
||||
}
|
||||
|
||||
if {[info exists ::env(PMIX_VERSION)]} {
|
||||
set pmix_major_version [lindex [split $::env(PMIX_VERSION) "."] 0]
|
||||
setenv SLURM_MPI_TYPE "pmix_v$pmix_major_version"
|
||||
}
|
||||
|
||||
if { $V_MAJOR >= 5 } {
|
||||
setenv OMPI_MCA_mca_base_component_show_load_errors = '^accelerator,rcache,btl/smcuda'
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user