From df1736bb9119af2d85bffb6703d76af431b5359d Mon Sep 17 00:00:00 2001 From: Jakob Fritz Date: Mon, 17 Jun 2024 10:07:49 +0200 Subject: [PATCH 1/9] Added Job-Token as needed by Gitlab --- .gitlab-ci.yml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index a757fb1155..1da3318a63 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -14,6 +14,9 @@ prepare_JUWELS: stage: benchmark rules: - if: $CI_COMMIT_MESSAGE !~ /.*\[CI-no-benchmarks\]/ + id_tokens: + CI_JOB_JWT: + aud: https://gitlab.jsc.fz-juelich.de tags: - jacamar - juwels @@ -39,6 +42,9 @@ test_JUWELS: - prepare_JUWELS rules: - if: $CI_COMMIT_MESSAGE !~ /.*\[CI-no-benchmarks\]/ + id_tokens: + CI_JOB_JWT: + aud: https://gitlab.jsc.fz-juelich.de tags: - jacamar - juwels @@ -88,6 +94,9 @@ benchmark: when: manual tags: - docker + id_tokens: + CI_JOB_JWT: + aud: https://gitlab.jsc.fz-juelich.de rules: - if: $CI_COMMIT_MESSAGE !~ /.*\[CI-no-benchmarks\]/ artifacts: From d7443c02fd21ea198ebe3a099cd6d73a80e1b86e Mon Sep 17 00:00:00 2001 From: Jakob Fritz Date: Wed, 19 Jun 2024 08:48:35 +0200 Subject: [PATCH 2/9] Moved schedule towards nighttime and triggered CI again, as HPC-Systems are now back --- .github/workflows/gitlab_ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/gitlab_ci.yml b/.github/workflows/gitlab_ci.yml index a76d3616e0..dd1f479fa8 100644 --- a/.github/workflows/gitlab_ci.yml +++ b/.github/workflows/gitlab_ci.yml @@ -7,7 +7,7 @@ on: pull_request_target: types: [opened, synchronize, reopened, labeled] schedule: - - cron: '1 5 2 * *' + - cron: '1 3 2 * *' jobs: check_permission: From 383c70d4f0711351ce238c5c79732840f8ca2eb0 Mon Sep 17 00:00:00 2001 From: Jakob Fritz Date: Mon, 24 Jun 2024 10:11:23 +0200 Subject: [PATCH 3/9] Schedule gitlab-ci workflow at the same time as github-workflow --- .github/workflows/gitlab_ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/gitlab_ci.yml b/.github/workflows/gitlab_ci.yml index dd1f479fa8..24a3578598 100644 --- a/.github/workflows/gitlab_ci.yml +++ b/.github/workflows/gitlab_ci.yml @@ -7,7 +7,7 @@ on: pull_request_target: types: [opened, synchronize, reopened, labeled] schedule: - - cron: '1 3 2 * *' + - cron: '1 5 * * 1' jobs: check_permission: From d18df59a811c25d4a2bcf1d832569e2451d6c3f7 Mon Sep 17 00:00:00 2001 From: Jakob Fritz Date: Mon, 24 Jun 2024 10:45:04 +0200 Subject: [PATCH 4/9] Moved installation of more packages into preparation to avoid parallel access of files --- .gitlab-ci.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 1da3318a63..7600c2ea73 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -34,6 +34,11 @@ prepare_JUWELS: - module load CuPy - pip install -e . - pip install pytest-benchmark coverage + - git submodule add -f https://github.com/brownbaerchen/mpi4py-fft.git + - cd mpi4py-fft + - git checkout cupy_implementation + - FFTW_LIBRARY_DIR="/p/software/juwels/stages/2024/software/FFTW/3.3.10-GCC-12.3.0/lib64" pip install --force-reinstall -e . + - cd ../ test_JUWELS: @@ -69,11 +74,6 @@ test_JUWELS: - module load mpi4py - module load SciPy-Stack - module load CuPy - - git submodule add -f https://github.com/brownbaerchen/mpi4py-fft.git - - cd mpi4py-fft - - git checkout cupy_implementation - - FFTW_LIBRARY_DIR="/p/software/juwels/stages/2024/software/FFTW/3.3.10-GCC-12.3.0/lib64" pip install --force-reinstall -e . - - cd ../ script: # - touch benchmarks/output.json - echo $SYSTEMNAME From 94f03c6eb1a88f63b94a13281eec82509f2bf4bc Mon Sep 17 00:00:00 2001 From: Jakob Fritz Date: Mon, 24 Jun 2024 12:08:57 +0200 Subject: [PATCH 5/9] First try to use virtual envs from python So that installed packages are available in later CI-Jobs --- .gitlab-ci.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 7600c2ea73..fd0c29c534 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -32,6 +32,8 @@ prepare_JUWELS: - module load mpi4py - module load SciPy-Stack - module load CuPy + - python -m venv --clear ./.venv/pySDC + - source ./.venv/pySDC/bin/activate - pip install -e . - pip install pytest-benchmark coverage - git submodule add -f https://github.com/brownbaerchen/mpi4py-fft.git @@ -74,6 +76,7 @@ test_JUWELS: - module load mpi4py - module load SciPy-Stack - module load CuPy + - source ./.venv/pySDC/bin/activate script: # - touch benchmarks/output.json - echo $SYSTEMNAME From 2a0f7fa44756ba57aab49460e1ea2c5d8a21413c Mon Sep 17 00:00:00 2001 From: Jakob Fritz Date: Mon, 24 Jun 2024 12:17:11 +0200 Subject: [PATCH 6/9] Store venv on scratch --- .gitlab-ci.yml | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index fd0c29c534..56552dde8e 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -17,6 +17,8 @@ prepare_JUWELS: id_tokens: CI_JOB_JWT: aud: https://gitlab.jsc.fz-juelich.de + SITE_ID_TOKEN: + aud: https://gitlab.jsc.fz-juelich.de tags: - jacamar - juwels @@ -32,8 +34,8 @@ prepare_JUWELS: - module load mpi4py - module load SciPy-Stack - module load CuPy - - python -m venv --clear ./.venv/pySDC - - source ./.venv/pySDC/bin/activate + - python -m venv --clear $SCRATCH/.venv/pySDC + - source $SCRATCH/.venv/pySDC/bin/activate - pip install -e . - pip install pytest-benchmark coverage - git submodule add -f https://github.com/brownbaerchen/mpi4py-fft.git @@ -52,6 +54,8 @@ test_JUWELS: id_tokens: CI_JOB_JWT: aud: https://gitlab.jsc.fz-juelich.de + SITE_ID_TOKEN: + aud: https://gitlab.jsc.fz-juelich.de tags: - jacamar - juwels @@ -76,7 +80,7 @@ test_JUWELS: - module load mpi4py - module load SciPy-Stack - module load CuPy - - source ./.venv/pySDC/bin/activate + - source $SCRATCH/.venv/pySDC/bin/activate script: # - touch benchmarks/output.json - echo $SYSTEMNAME @@ -100,6 +104,8 @@ benchmark: id_tokens: CI_JOB_JWT: aud: https://gitlab.jsc.fz-juelich.de + SITE_ID_TOKEN: + aud: https://gitlab.jsc.fz-juelich.de rules: - if: $CI_COMMIT_MESSAGE !~ /.*\[CI-no-benchmarks\]/ artifacts: From 91436517442c2cf4af3caa97d7629ff00845a428 Mon Sep 17 00:00:00 2001 From: Jakob Fritz Date: Mon, 24 Jun 2024 12:24:59 +0200 Subject: [PATCH 7/9] Activate project to use SCRATCH --- .gitlab-ci.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 56552dde8e..97a62b4c67 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -8,6 +8,7 @@ stages: variables: JUWELS_ACCOUNT: "cstma" + JUWELS_PROJECT: "ccstma" prepare_JUWELS: @@ -34,6 +35,7 @@ prepare_JUWELS: - module load mpi4py - module load SciPy-Stack - module load CuPy + - jutil env activate -p ${{ JUWELS_PROJECT }} - python -m venv --clear $SCRATCH/.venv/pySDC - source $SCRATCH/.venv/pySDC/bin/activate - pip install -e . @@ -80,6 +82,7 @@ test_JUWELS: - module load mpi4py - module load SciPy-Stack - module load CuPy + - jutil env activate -p ${{ JUWELS_PROJECT }} - source $SCRATCH/.venv/pySDC/bin/activate script: # - touch benchmarks/output.json From 3b0f7e8d788371fb7c92ce6593e7e5f29a1d3c06 Mon Sep 17 00:00:00 2001 From: Jakob Fritz Date: Mon, 24 Jun 2024 12:26:53 +0200 Subject: [PATCH 8/9] Wrong usage of variables --- .gitlab-ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 97a62b4c67..8c8aced00d 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -35,7 +35,7 @@ prepare_JUWELS: - module load mpi4py - module load SciPy-Stack - module load CuPy - - jutil env activate -p ${{ JUWELS_PROJECT }} + - jutil env activate -p ${JUWELS_PROJECT} - python -m venv --clear $SCRATCH/.venv/pySDC - source $SCRATCH/.venv/pySDC/bin/activate - pip install -e . @@ -82,7 +82,7 @@ test_JUWELS: - module load mpi4py - module load SciPy-Stack - module load CuPy - - jutil env activate -p ${{ JUWELS_PROJECT }} + - jutil env activate -p ${JUWELS_PROJECT} - source $SCRATCH/.venv/pySDC/bin/activate script: # - touch benchmarks/output.json From 30ecb3057269d0a8b61f56bf09248852bfe5a7c9 Mon Sep 17 00:00:00 2001 From: Jakob Fritz Date: Mon, 24 Jun 2024 12:34:35 +0200 Subject: [PATCH 9/9] Try installing mpi4py-fft for later usage --- .gitlab-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 8c8aced00d..196d15a6bc 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -43,7 +43,7 @@ prepare_JUWELS: - git submodule add -f https://github.com/brownbaerchen/mpi4py-fft.git - cd mpi4py-fft - git checkout cupy_implementation - - FFTW_LIBRARY_DIR="/p/software/juwels/stages/2024/software/FFTW/3.3.10-GCC-12.3.0/lib64" pip install --force-reinstall -e . + - FFTW_LIBRARY_DIR="/p/software/juwels/stages/2024/software/FFTW/3.3.10-GCC-12.3.0/lib64" pip install --force-reinstall . - cd ../