From df8ade66ef606fb4dc1f51f6ce248af4c00fdf2b Mon Sep 17 00:00:00 2001 From: Matthias Krack Date: Sun, 16 Feb 2025 16:06:20 +0100 Subject: [PATCH] Add SLURM flags --- ci/cscs-ci.yml | 12 ++++++++---- ci/docker/build_cp2k_psmp.Dockerfile | 3 ++- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/ci/cscs-ci.yml b/ci/cscs-ci.yml index bea4abc161..67919f681d 100644 --- a/ci/cscs-ci.yml +++ b/ci/cscs-ci.yml @@ -18,7 +18,7 @@ build_cp2k_job: - TAG=${TAG_IMAGE}-${TAG_DOCKERFILE} - echo "BUILD_IMAGE=${PERSIST_IMAGE_NAME}" > build.env - 'echo "INFO: Building image ${PERSIST_IMAGE_NAME}"' - - 'echo "INFO: Using NUM_CORES_BUILD_DEPS=${NUM_CORES_BUILD_DEPS}"' + - 'echo "INFO: Using MAX_TASKS=${MAX_TASKS}"' - 'echo "INFO: Created TAG=${TAG}"' artifacts: reports: @@ -26,7 +26,7 @@ build_cp2k_job: variables: DOCKER_BUILD_ARGS: '[ "BASE_IMAGE", - "NUM_PROCS=${NUM_CORES_BUILD_DEPS}" + "MAX_TASKS=${NUM_CORES_BUILD_DEPS}" ]' DOCKERFILE: ci/docker/build_cp2k_psmp.Dockerfile BASE_IMAGE: ubuntu:24.04 @@ -40,9 +40,13 @@ test_cp2k_job: - echo PATH=${PATH} - pwd - export + - cp2k.psmp -h -v - /opt/cp2k/bin/run_tests variables: + OMP_NUM_THREADS: 2 SLURM_CONSTRAINT: mc - SLURM_NTASKS: 128 + SLURM_CPU_BIND: verbose + SLURM_HINT: nomultithread + SLURM_NTASKS: ${MAX_TASKS} SLURM_TIMELIMIT: "60:00" - THREADS_MAX_PER_TASK: 2 + SRUN_CPUS_PER_TASK: 2 diff --git a/ci/docker/build_cp2k_psmp.Dockerfile b/ci/docker/build_cp2k_psmp.Dockerfile index 2f3b4d2c2e..f32a0a4fec 100644 --- a/ci/docker/build_cp2k_psmp.Dockerfile +++ b/ci/docker/build_cp2k_psmp.Dockerfile @@ -155,7 +155,8 @@ source /opt/cp2k/tools/toolchain/install/setup\n\ >/opt/cp2k/bin/entrypoint.sh && chmod 755 /opt/cp2k/bin/entrypoint.sh # Create shortcut for regression test -RUN printf "/opt/cp2k/tests/do_regtest.py --workbasedir /mnt \$* /opt/cp2k/bin psmp" \ +ARG MAX_TASKS +RUN printf "/opt/cp2k/tests/do_regtest.py --maxtasks ${MAX_TASKS} --mpiexec srun --workbasedir /mnt \$* /opt/cp2k/bin psmp" \ >/opt/cp2k/bin/run_tests && chmod 755 /opt/cp2k/bin/run_tests # Define entrypoint