mirror of
https://github.com/cp2k/cp2k.git
synced 2026-07-29 06:35:28 -04:00
Various fixes for the Cray H100 tester (#4869)
- Set unique PERSIST_IMAGE_NAME and fix typo - Allow for change of BASE_IMAGE - Fix short-name resolution issue - Fix disable all features for libxsmm - Add test runs to tester - Add stage test to list - Fix tag and add device flag - Use netmod ofi instead of ucx
This commit is contained in:
parent
65c71bef51
commit
a9a9e09f53
8 changed files with 46 additions and 13 deletions
|
|
@ -89,7 +89,7 @@ regression test cp2k daint:
|
|||
SLURM_DEBUG: 1
|
||||
SLURM_HINT: nomultithread
|
||||
SLURM_JOB_NUM_NODES: 1
|
||||
SLURM_NTASKS: 288
|
||||
SLURM_NTASKS: 228
|
||||
SLURM_TIMELIMIT: 30
|
||||
USE_MPI: YES
|
||||
|
||||
|
|
@ -114,5 +114,3 @@ benchmark cp2k 1 daint node:
|
|||
SLURM_NTASKS_PER_NODE: 288
|
||||
SLURM_TIMELIMIT: 30
|
||||
USE_MPI: YES
|
||||
|
||||
# EOF
|
||||
|
|
|
|||
|
|
@ -4,13 +4,14 @@ include:
|
|||
stages:
|
||||
- deps
|
||||
- cp2k
|
||||
- test
|
||||
|
||||
variables:
|
||||
REPOSITORY: cp2k_daint
|
||||
BUILDER: spack
|
||||
VERSION: psmp
|
||||
TAG: "${BUILDER}_${VERSION}"
|
||||
UBUNTU_IMAGE_NAME: "nvidia/cuda:12.4.1-devel-ubuntu22.04"
|
||||
TAG: "${BUILDER}_${VERSION}_h100"
|
||||
UBUNTU_IMAGE_NAME: "docker.io/nvidia/cuda:12.4.1-devel-ubuntu22.04"
|
||||
CSCS_IMAGE_NAME: "${CSCS_REGISTRY_PATH}/${REPOSITORY}:${TAG}_${CI_COMMIT_SHORT_SHA}"
|
||||
DOCKERHUB_IMAGE_NAME: "docker.io/${DOCKERHUB_USERNAME}/${REPOSITORY}:${TAG}"
|
||||
|
||||
|
|
@ -34,7 +35,7 @@ build deps daint:
|
|||
DOCKERFILE: ci/docker/build_${CI_JOB_STAGE}_${BUILDER}.Dockerfile
|
||||
BASE_IMAGE: ${UBUNTU_IMAGE_NAME}
|
||||
CP2K_VERSION: ${VERSION}
|
||||
FEATURE_FLAGS: "-gpu H100 -df all""
|
||||
FEATURE_FLAGS: "-gpu H100 -df all"
|
||||
|
||||
build cp2k daint:
|
||||
extends: .container-builder-cscs-gh200
|
||||
|
|
@ -57,3 +58,36 @@ build cp2k daint:
|
|||
DEPS_IMAGE: ${DEPS_IMAGE_NAME}
|
||||
FEATURE_FLAGS: "-gpu H100 -df all"
|
||||
PERSIST_IMAGE_NAME: ${CSCS_IMAGE_NAME}
|
||||
|
||||
test cp2k daint:
|
||||
extends: .baremetal-runner-daint-gh200
|
||||
stage: test
|
||||
needs: ["build cp2k daint"]
|
||||
timeout: 1h
|
||||
script:
|
||||
- podman run --device nvidia.com/gpu=0 --shm-size=1g -v ${PWD}:/mnt ${DOCKERHUB_IMAGE_NAME} mpiexec -bind-to socket -genv OMP_NUM_THREADS=${SLURM_CPUS_PER_TASK} -n ${SLURM_NTASKS} cp2k /opt/cp2k/benchmarks/CI/H2O-32_md.inp
|
||||
variables:
|
||||
SLURM_CPUS_PER_TASK: 4
|
||||
SLURM_DEBUG: 1
|
||||
SLURM_HINT: nomultithread
|
||||
SLURM_JOB_NUM_NODES: 1
|
||||
SLURM_NTASKS: 8
|
||||
SLURM_NTASKS_PER_NODE: 8
|
||||
SLURM_TIMELIMIT: 10
|
||||
USE_MPI: YES
|
||||
|
||||
regression test cp2k daint:
|
||||
extends: .baremetal-runner-daint-gh200
|
||||
stage: test
|
||||
needs: ["build cp2k daint","test cp2k daint"]
|
||||
timeout: 1h
|
||||
script:
|
||||
- git --no-pager log -1 --pretty="%nCommitSHA:%x20%H%nCommitTime:%x20%ci%nCommitAuthor:%x20%an%nCommitSubject:%x20%s%n"
|
||||
- podman run --device nvidia.com/gpu=all --shm-size=1g -v ${PWD}:/mnt ${DOCKERHUB_IMAGE_NAME} /opt/cp2k/tests/do_regtest.py --cp2kdatadir /opt/cp2k/install/share/cp2k/data --maxtasks ${SLURM_NTASKS} --mpiexec "mpiexec -bind-to none" --keepalive /opt/cp2k/install/bin ${VERSION} 2>&1 || true
|
||||
variables:
|
||||
SLURM_DEBUG: 1
|
||||
SLURM_HINT: nomultithread
|
||||
SLURM_JOB_NUM_NODES: 1
|
||||
SLURM_NTASKS: 228
|
||||
SLURM_TIMELIMIT: 30
|
||||
USE_MPI: YES
|
||||
|
|
|
|||
|
|
@ -138,5 +138,3 @@ benchmark cp2k 2 eiger nodes:
|
|||
SLURM_NTASKS_PER_NODE: 128
|
||||
SLURM_TIMELIMIT: 30
|
||||
USE_MPI: YES
|
||||
|
||||
# EOF
|
||||
|
|
|
|||
|
|
@ -91,5 +91,3 @@ regression test cp2k eiger:
|
|||
SLURM_JOB_NUM_NODES: 1
|
||||
SLURM_NTASKS: 128
|
||||
SLURM_TIMELIMIT: 40
|
||||
|
||||
# EOF
|
||||
|
|
|
|||
|
|
@ -6,8 +6,8 @@
|
|||
# Author: Matthias Krack (MK)
|
||||
#
|
||||
|
||||
ARG BASE_IMAGE="ubuntu:24.04"
|
||||
ARG DEPS_IMAGE=""
|
||||
ARG BASE_IMAGE=${BASE_IMAGE:-ubuntu:24.04}
|
||||
ARG DEPS_IMAGE=${DEPS_IMAGE:-}
|
||||
|
||||
###### Stage 2: Build CP2K ######
|
||||
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@
|
|||
#
|
||||
# Stage 1: Create a base image providing the dependencies for building a CP2K binary
|
||||
|
||||
ARG BASE_IMAGE="ubuntu:24.04"
|
||||
ARG BASE_IMAGE=${BASE_IMAGE:-ubuntu:24.04}
|
||||
|
||||
FROM "${BASE_IMAGE}" AS build_deps
|
||||
|
||||
|
|
|
|||
|
|
@ -233,6 +233,9 @@ while [[ $# -gt 0 ]]; do
|
|||
spglib spla tblite trexio; do
|
||||
SED_PATTERN_LIST+=" -e '/\s*-\s+\"${package}@/ ${SUBST}"
|
||||
done
|
||||
if [[ "${ON_OFF}" == "OFF" ]]; then
|
||||
SED_PATTERN_LIST+=" -e '/\s*-\s+\"smm=libxsmm\"/ s/libxsmm/blas/'"
|
||||
fi
|
||||
;;
|
||||
ace | cosma | deepmd | dftd4 | dlaf | elpa | fftw3 | greenx | hdf5 | libint2 | \
|
||||
libsmeagol | libtorch | libxc | libxsmm | mimic | openpmd | pexsi | plumed | \
|
||||
|
|
@ -828,6 +831,7 @@ if [[ ! -d "${SPACK_BUILD_PATH}" ]]; then
|
|||
# Apply Cray specific adaptation of the spack configuration if requested (CSCS)
|
||||
if [[ "${CRAY}" == "yes" ]]; then
|
||||
sed -E \
|
||||
-e '/\s*#\s*-\s+"netmod=ofi"/ s/#/ /' \
|
||||
-e 's/~xpmem/+xpmem/' \
|
||||
-e 's/"libfabric@[.0-9]*"/"libfabric@1.22.0"/' \
|
||||
-i "${CP2K_CONFIG_FILE}"
|
||||
|
|
|
|||
|
|
@ -47,6 +47,7 @@ spack:
|
|||
mpich:
|
||||
require:
|
||||
- "~xpmem"
|
||||
# - "netmod=ofi"
|
||||
|
||||
xpmem:
|
||||
require:
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue