Skip to content
Snippets Groups Projects
Commit 08160d8f authored by Sergey Kosukhin's avatar Sergey Kosukhin
Browse files

Update CI: switch to the new SW stack in Breeze.

parent 1b7d9b6b
No related branches found
No related tags found
1 merge request!62Switch CI to the new SW stack on Breeze
Pipeline #44827 failed
......@@ -28,7 +28,7 @@ init_gcc ()
{
init_env
switch_for_module gcc/12.1.0 mpich/3.4.3-gcc-12.1.0
switch_for_module gcc/12.1.0 mpich/4.1.2-gcc-12.1.0
CC=gcc
CXX=g++
......@@ -38,9 +38,9 @@ init_gcc ()
MPI_LAUNCH="$(which mpirun)"
ECCODES_ROOT='/sw/bullseye-x64/packages/gcc-12.1.0/eccodes-2.26.0'
NETCDF_ROOT='/sw/bullseye-x64/packages/gcc-12.1.0/netcdf-c-4.9.0'
PPM_ROOT='/data/mpi/sclab/sip/m300488/libcdi-ci-sw/ppm-1.0.8.1-gcc-12.1.0'
YAXT_ROOT='/data/mpi/sclab/sip/m300488/libcdi-ci-sw/yaxt-0.9.3.1-gcc-12.1.0'
NETCDF_ROOT='/sw/bullseye-x64/packages/gcc-12.1.0/netcdf-c-4.9.2'
PPM_ROOT='/data/mpi/sclab/sip/m300488/libcdi-ci-sw/ppm-1.0.8.2-mpich-4.1.2-gcc-12.1.0'
YAXT_ROOT='/data/mpi/sclab/sip/m300488/libcdi-ci-sw/yaxt-0.10.0-mpich-4.1.2-gcc-12.1.0'
# The installations of NetCDF and ecCodes libraries do not provide '*.la'
# files, which would trigger the RPATH injection:
......@@ -54,7 +54,7 @@ init_nvhpc ()
{
init_env
switch_for_module nvhpc/22.3 mpich/3.4.3-nvhpc-22.3
switch_for_module nvhpc/23.7 mpich/4.1.2-nvhpc-23.7
CC=nvc
CXX=nvc++
......@@ -63,10 +63,10 @@ init_nvhpc ()
MPIFC=mpif90
MPI_LAUNCH="$(which mpirun)"
ECCODES_ROOT='/sw/bullseye-x64/packages/nvhpc-22.3/eccodes-2.26.0'
NETCDF_ROOT='/sw/bullseye-x64/packages/nvhpc-22.3/netcdf-c-4.9.0'
PPM_ROOT='/data/mpi/sclab/sip/m300488/libcdi-ci-sw/ppm-1.0.8.1-nvhpc-22.3'
YAXT_ROOT='/data/mpi/sclab/sip/m300488/libcdi-ci-sw/yaxt-0.9.3.1-nvhpc-22.3'
ECCODES_ROOT='/sw/bullseye-x64/packages/nvhpc-23.7/eccodes-2.26.0'
NETCDF_ROOT='/sw/bullseye-x64/packages/nvhpc-23.7/netcdf-c-4.9.2'
PPM_ROOT='/data/mpi/sclab/sip/m300488/libcdi-ci-sw/ppm-1.0.8.2-mpich-4.1.2-nvhpc-23.7'
YAXT_ROOT='/data/mpi/sclab/sip/m300488/libcdi-ci-sw/yaxt-0.10.0-mpich-4.1.2-nvhpc-23.7'
# The installations of NetCDF and ecCodes libraries do not provide '*.la'
# files, which would trigger the RPATH injection:
......@@ -93,9 +93,9 @@ init_clang ()
MPI_LAUNCH="$(which mpirun) --oversubscribe"
ECCODES_ROOT='/sw/bullseye-x64/packages/clang-14.0.6/eccodes-2.26.0'
NETCDF_ROOT='/sw/bullseye-x64/packages/clang-14.0.6/netcdf-c-4.9.0-openmpi-4.1.3'
PPM_ROOT='/data/mpi/sclab/sip/m300488/libcdi-ci-sw/ppm-1.0.8.1-clang-14.0.6'
YAXT_ROOT='/data/mpi/sclab/sip/m300488/libcdi-ci-sw/yaxt-0.9.3.1-clang-14.0.6'
NETCDF_ROOT='/sw/bullseye-x64/packages/clang-14.0.6/netcdf-c-4.9.2-openmpi-4.1.3'
PPM_ROOT='/data/mpi/sclab/sip/m300488/libcdi-ci-sw/ppm-1.0.8.2-openmpi-4.1.3-clang-14.0.6'
YAXT_ROOT='/data/mpi/sclab/sip/m300488/libcdi-ci-sw/yaxt-0.10.0-openmpi-4.1.3-clang-14.0.6'
# The installations of NetCDF and ecCodes libraries do not provide '*.la'
# files, which would trigger the RPATH injection:
......@@ -112,7 +112,7 @@ init_nag ()
init_env
switch_for_module nag/7.1 mpich/3.4.3-nag-7.1
switch_for_module nag/7.1.7125 mpich/4.1.2-nag-7.1.7125
CC=gcc
CXX=g++
......@@ -121,10 +121,10 @@ init_nag ()
MPIFC=mpif90
MPI_LAUNCH="$(which mpirun)"
ECCODES_ROOT='/sw/bullseye-x64/packages/nag-7.1/eccodes-2.26.0'
NETCDF_ROOT='/sw/bullseye-x64/packages/nag-7.1/netcdf-c-4.9.0-mpich-3.4.3'
PPM_ROOT='/data/mpi/sclab/sip/m300488/libcdi-ci-sw/ppm-1.0.8.1-nag-7.1'
YAXT_ROOT='/data/mpi/sclab/sip/m300488/libcdi-ci-sw/yaxt-0.9.3.1-nag-7.1'
ECCODES_ROOT='/sw/bullseye-x64/packages/nag-7.1.7125/eccodes-2.26.0'
NETCDF_ROOT='/sw/bullseye-x64/packages/nag-7.1.7125/netcdf-c-4.9.2-mpich-4.1.2'
PPM_ROOT='/data/mpi/sclab/sip/m300488/libcdi-ci-sw/ppm-1.0.8.2-mpich-4.1.2-nag-7.1.7125'
YAXT_ROOT='/data/mpi/sclab/sip/m300488/libcdi-ci-sw/yaxt-0.10.0-mpich-4.1.2-nag-7.1.7125'
# The installations of NetCDF and ecCodes libraries do not provide '*.la'
# files, which would trigger the RPATH injection:
......
......@@ -13,103 +13,107 @@ make_cmd='make -j22'
mkdir -p "${work_dir}" && cd "${work_dir}"
# Get PPM:
wget https://swprojects.dkrz.de/redmine/attachments/download/521/ppm-1.0.8.1.tar.gz
tar xvf ppm-1.0.8.1.tar.gz
ppm_src_dir="${work_dir}/ppm-1.0.8.1"
ppm_name_tag='ppm-1.0.8.1'
wget https://swprojects.dkrz.de/redmine/attachments/download/525/ppm-1.0.8.2.tar.gz
tar xvf ppm-1.0.8.2.tar.gz
ppm_src_dir="${work_dir}/ppm-1.0.8.2"
ppm_name_tag='ppm-1.0.8.2'
ppm_config_args='--enable-MPI --disable-netcdf --disable-hdf5 --disable-parmetis --disable-metis --disable-crypto'
# Get YAXT:
git clone -b release-0.9.3.1 https://gitlab.dkrz.de/dkrz-sw/yaxt.git
git -C yaxt cherry-pick 8c1b18bc9cfb3c7185017e37f8b39f7a61c94259
git clone -b release-0.10.0 https://gitlab.dkrz.de/dkrz-sw/yaxt.git
git -C yaxt cherry-pick 602493aad8c6e817f32c9a4889fc2a271573f896
yaxt_src_dir="${work_dir}/yaxt"
yaxt_name_tag='yaxt-0.9.3.1'
yaxt_name_tag='yaxt-0.10.0'
yaxt_config_args=''
export CC='mpicc'
export FC='mpif90'
# Install for GCC 12.1.0:
module load mpich/4.1.2-gcc-12.1.0
mpi_name_tag='mpich-4.1.2'
compiler_name_tag='gcc-12.1.0'
module load mpich/3.4.3-gcc-12.1.0
# Install PPM:
build_dir="${ppm_name_tag}-${compiler_name_tag}"
build_dir="${ppm_name_tag}-${mpi_name_tag}-${compiler_name_tag}"
mkdir "${build_dir}"
( cd "${build_dir}"
"${ppm_src_dir}/configure" ${ppm_config_args} --prefix="${install_dir}/${ppm_name_tag}-${compiler_name_tag}" FCFLAGS='-g -O2 -fallow-argument-mismatch'
"${ppm_src_dir}/configure" ${ppm_config_args} --prefix="${install_dir}/${ppm_name_tag}-${mpi_name_tag}-${compiler_name_tag}" FCFLAGS='-g -O2 -fallow-argument-mismatch'
$make_cmd
$make_cmd check
$make_cmd install )
# Install YAXT:
build_dir="${yaxt_name_tag}-${compiler_name_tag}"
build_dir="${yaxt_name_tag}-${mpi_name_tag}-${compiler_name_tag}"
mkdir "${build_dir}"
( cd "${build_dir}"
"${yaxt_src_dir}/configure" ${yaxt_config_args} --prefix="${install_dir}/${yaxt_name_tag}-${compiler_name_tag}"
"${yaxt_src_dir}/configure" ${yaxt_config_args} --prefix="${install_dir}/${yaxt_name_tag}-${mpi_name_tag}-${compiler_name_tag}"
$make_cmd
$make_cmd check
$make_cmd install )
module unload mpich/3.4.3-gcc-12.1.0
module unload mpich/4.1.2-gcc-12.1.0
# Install for NVHPC 22.3:
compiler_name_tag='nvhpc-22.3'
module load mpich/3.4.3-nvhpc-22.3
module load mpich/4.1.2-nvhpc-23.7
mpi_name_tag='mpich-4.1.2'
compiler_name_tag='nvhpc-23.7'
# Install PPM:
build_dir="${ppm_name_tag}-${compiler_name_tag}"
build_dir="${ppm_name_tag}-${mpi_name_tag}-${compiler_name_tag}"
mkdir "${build_dir}"
( cd "${build_dir}"
"${ppm_src_dir}/configure" ${ppm_config_args} --prefix="${install_dir}/${ppm_name_tag}-${compiler_name_tag}" FCFLAGS='-g -O2 -tp sandybridge' CFLAGS='-g -O2 -tp sandybridge'
"${ppm_src_dir}/configure" ${ppm_config_args} --prefix="${install_dir}/${ppm_name_tag}-${mpi_name_tag}-${compiler_name_tag}" FCFLAGS='-g -O2 -tp sandybridge' CFLAGS='-g -O2 -tp sandybridge'
$make_cmd
$make_cmd check
$make_cmd install )
# Install YAXT:
build_dir="${yaxt_name_tag}-${compiler_name_tag}"
build_dir="${yaxt_name_tag}-${mpi_name_tag}-${compiler_name_tag}"
mkdir "${build_dir}"
( cd "${build_dir}"
"${yaxt_src_dir}/configure" ${yaxt_config_args} --prefix="${install_dir}/${yaxt_name_tag}-${compiler_name_tag}" FCFLAGS='-g -O2 -tp sandybridge' CFLAGS='-g -O2 -tp sandybridge'
"${yaxt_src_dir}/configure" ${yaxt_config_args} --prefix="${install_dir}/${yaxt_name_tag}-${mpi_name_tag}-${compiler_name_tag}" FCFLAGS='-g -O2 -tp sandybridge' CFLAGS='-g -O2 -tp sandybridge'
$make_cmd
$make_cmd check
$make_cmd install )
module unload mpich/3.4.3-nvhpc-22.3
module unload mpich/4.1.2-nvhpc-23.7
# Install for Clang 14.0.6:
compiler_name_tag='clang-14.0.6'
module load openmpi/4.1.3-clang-14.0.6
mpi_name_tag='openmpi-4.1.3'
compiler_name_tag='clang-14.0.6'
# Install PPM:
build_dir="${ppm_name_tag}-${compiler_name_tag}"
build_dir="${ppm_name_tag}-${mpi_name_tag}-${compiler_name_tag}"
mkdir "${build_dir}"
( cd "${build_dir}"
"${ppm_src_dir}/configure" ${ppm_config_args} --prefix="${install_dir}/${ppm_name_tag}-${compiler_name_tag}" FCFLAGS='-g -O2 -no-pie'
"${ppm_src_dir}/configure" ${ppm_config_args} --prefix="${install_dir}/${ppm_name_tag}-${mpi_name_tag}-${compiler_name_tag}" FCFLAGS='-g -O2 -no-pie'
$make_cmd
$make_cmd check
$make_cmd install )
# Install YAXT:
build_dir="${yaxt_name_tag}-${compiler_name_tag}"
build_dir="${yaxt_name_tag}-${mpi_name_tag}-${compiler_name_tag}"
mkdir "${build_dir}"
( cd "${build_dir}"
"${yaxt_src_dir}/configure" ${yaxt_config_args} --prefix="${install_dir}/${yaxt_name_tag}-${compiler_name_tag}" FCFLAGS='-g -O2 -no-pie'
"${yaxt_src_dir}/configure" ${yaxt_config_args} --prefix="${install_dir}/${yaxt_name_tag}-${mpi_name_tag}-${compiler_name_tag}" FCFLAGS='-g -O2 -no-pie'
$make_cmd
$make_cmd check
$make_cmd install )
module unload openmpi/4.1.3-clang-14.0.6
# Install for NAG 7.1:
compiler_name_tag='nag-7.1'
module load mpich/3.4.3-nag-7.1
# Install for NAG 7.1.7125:
module load mpich/4.1.2-nag-7.1.7125
mpi_name_tag='mpich-4.1.2'
compiler_name_tag='nag-7.1.7125'
# Install PPM:
build_dir="${ppm_name_tag}-${compiler_name_tag}"
build_dir="${ppm_name_tag}-${mpi_name_tag}-${compiler_name_tag}"
mkdir "${build_dir}"
( cd "${build_dir}"
"${ppm_src_dir}/configure" ${ppm_config_args} --prefix="${install_dir}/${ppm_name_tag}-${compiler_name_tag}" FC=no
"${ppm_src_dir}/configure" ${ppm_config_args} --prefix="${install_dir}/${ppm_name_tag}-${mpi_name_tag}-${compiler_name_tag}" FC=no
$make_cmd
$make_cmd check
$make_cmd install )
......@@ -118,9 +122,9 @@ mkdir "${build_dir}"
build_dir="${yaxt_name_tag}-${compiler_name_tag}"
mkdir "${build_dir}"
( cd "${build_dir}"
"${yaxt_src_dir}/configure" ${yaxt_config_args} --prefix="${install_dir}/${yaxt_name_tag}-${compiler_name_tag}"
"${yaxt_src_dir}/configure" ${yaxt_config_args} --prefix="${install_dir}/${yaxt_name_tag}-${mpi_name_tag}-${compiler_name_tag}"
$make_cmd
$make_cmd check
$make_cmd install )
module unload mpich/3.4.3-nag-7.1
module unload mpich/4.1.2-nag-7.1.7125
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment