Openmpi update

This commit is contained in:
2025-01-27 17:16:45 +01:00
parent 422d275ab9
commit e57683abde
7 changed files with 105 additions and 24 deletions

View File

@@ -1,9 +1,6 @@
#!/usr/bin/env modbuild
pbuild::pre_configure() {
pbuild::add_configure_args "--enable-shared"
pbuild::add_configure_args "--enable-static"
if (( V_MAJOR < 5 )); then
pbuild::add_configure_args "--enable-mpi-cxx"
pbuild::add_configure_args "--enable-mpi-cxx-seek"
@@ -27,12 +24,17 @@ pbuild::pre_configure() {
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
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
@@ -77,7 +79,9 @@ 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 || \
@@ -118,7 +122,14 @@ pbuild::post_install_no_slurm() {
pbuild::post_install() {
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
local fname=''

View File

@@ -8,7 +8,6 @@ openmpi:
relstage: stable
configure_args:
- --enable-shared
- --enable-static
docfiles: [AUTHORS, LICENSE, NEWS, README]
urls:
- url: https://download.open-mpi.org/release/open-mpi/v${V_MAJOR}.${V_MINOR}/openmpi-${V_PKG}.tar.bz2
@@ -58,22 +57,46 @@ openmpi:
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: unstable
relstage: stable
overlay: Alps
use_overlays: [PSI]
use_flags: [merlin7]
use_overlays: [PSI, Alps]
group_deps:
compiler: {gcc: [12.3.0], intelcc: [22.2]}
build_requires: [pmix/5.0.3, hwloc/2.11.1, libfabric/1.15.2.0, patchelf/0.14.5]
runtime_deps: [cuda/12.2.0]
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+:
- --enable-mpi1-compatibility
- --with-cxi
- --with-lustre
- --with-slingshot
use_flags: [merlin7, slurm]
4.1.6:
config:
@@ -82,7 +105,7 @@ openmpi:
- systems: [merlin-.*]
suffix: _slurm
use_flags: [merlin6, gpfs]
relstage: unstable
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]}
@@ -98,6 +121,7 @@ openmpi:
- LDFLAGS=-g
- --with-gpfs=/usr/lpp/mmfs
- --with-pmi=/usr
- --enable-static
- systems: [ra-.*]
suffix: _ra
@@ -109,16 +133,18 @@ openmpi:
configure_args+:
- --with-gpfs=/usr/lpp/mmfs
- --with-pmi=/usr
- --enable-static
- systems: [.*.merlin7.psi.ch]
relstage: unstable
relstage: stable
overlay: Alps
group_deps:
compiler: {gcc: [12.3.0], intelcc: [22.2]}
build_requires: [pmix/4.2.9, hwloc/2.11.1, libfabric/1.15.2.0, patchelf/0.14.5]
runtime_deps: [cuda/12.2.0]
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]

View File

@@ -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'
}