From 2107b6bf005b2efe2ccbd41392e3458634d77a27 Mon Sep 17 00:00:00 2001 From: Harmen Stoppels Date: Mon, 13 Mar 2023 08:29:58 +0100 Subject: Set build_jobs dynamically in CI to avoid oversubscription (#35996) Co-authored-by: Zack Galbreath Co-authored-by: Ryan Krattiger --- share/spack/gitlab/cloud_pipelines/configs/ci.yaml | 1 + share/spack/gitlab/cloud_pipelines/configs/config.yaml | 1 - share/spack/gitlab/cloud_pipelines/configs/linux/ci.yaml | 6 +++++- share/spack/gitlab/cloud_pipelines/configs/linux/ppc64le/ci.yaml | 1 + 4 files changed, 7 insertions(+), 2 deletions(-) (limited to 'share') diff --git a/share/spack/gitlab/cloud_pipelines/configs/ci.yaml b/share/spack/gitlab/cloud_pipelines/configs/ci.yaml index 8ada6673f0..8128dcd205 100644 --- a/share/spack/gitlab/cloud_pipelines/configs/ci.yaml +++ b/share/spack/gitlab/cloud_pipelines/configs/ci.yaml @@ -12,6 +12,7 @@ ci: - - spack compiler find - cd ${SPACK_CONCRETE_ENV_DIR} - spack env activate --without-view . + - if [ -n "$SPACK_BUILD_JOBS" ]; then spack config add "config:build_jobs:$SPACK_BUILD_JOBS"; fi - spack config add "config:install_tree:projections:${SPACK_JOB_SPEC_PKG_NAME}:'morepadding/{architecture}/{compiler.name}-{compiler.version}/{name}-{version}-{hash}'" - mkdir -p ${SPACK_ARTIFACTS_ROOT}/user_data # AWS runners mount E4S public key (verification), UO runners mount public/private (signing/verification) diff --git a/share/spack/gitlab/cloud_pipelines/configs/config.yaml b/share/spack/gitlab/cloud_pipelines/configs/config.yaml index bb0d502310..9ed4118e3e 100644 --- a/share/spack/gitlab/cloud_pipelines/configs/config.yaml +++ b/share/spack/gitlab/cloud_pipelines/configs/config.yaml @@ -1,5 +1,4 @@ config: - build_jobs: 32 concretizer: clingo db_lock_timeout: 120 install_tree: diff --git a/share/spack/gitlab/cloud_pipelines/configs/linux/ci.yaml b/share/spack/gitlab/cloud_pipelines/configs/linux/ci.yaml index 8503c89bd7..b774879329 100644 --- a/share/spack/gitlab/cloud_pipelines/configs/linux/ci.yaml +++ b/share/spack/gitlab/cloud_pipelines/configs/linux/ci.yaml @@ -17,7 +17,8 @@ ci: tags: [ "spack", "huge" ] variables: CI_JOB_SIZE: huge - KUBERNETES_CPU_REQUEST: 11000m + SPACK_BUILD_JOBS: "12" + KUBERNETES_CPU_REQUEST: 12000m KUBERNETES_MEMORY_REQUEST: 42G - match: @@ -77,6 +78,7 @@ ci: tags: [ "spack", "large" ] variables: CI_JOB_SIZE: large + SPACK_BUILD_JOBS: "8" KUBERNETES_CPU_REQUEST: 8000m KUBERNETES_MEMORY_REQUEST: 12G @@ -170,6 +172,7 @@ ci: tags: [ "spack", "medium" ] variables: CI_JOB_SIZE: "medium" + SPACK_BUILD_JOBS: "2" KUBERNETES_CPU_REQUEST: "2000m" KUBERNETES_MEMORY_REQUEST: "4G" @@ -286,5 +289,6 @@ ci: tags: [ "spack", "small" ] variables: CI_JOB_SIZE: "small" + SPACK_BUILD_JOBS: "1" KUBERNETES_CPU_REQUEST: "500m" KUBERNETES_MEMORY_REQUEST: "500M" diff --git a/share/spack/gitlab/cloud_pipelines/configs/linux/ppc64le/ci.yaml b/share/spack/gitlab/cloud_pipelines/configs/linux/ppc64le/ci.yaml index df0956d23b..5a700395a0 100644 --- a/share/spack/gitlab/cloud_pipelines/configs/linux/ppc64le/ci.yaml +++ b/share/spack/gitlab/cloud_pipelines/configs/linux/ppc64le/ci.yaml @@ -14,6 +14,7 @@ ci: - spack arch - cd ${SPACK_CONCRETE_ENV_DIR} - spack env activate --without-view . + - if [ -n "$SPACK_BUILD_JOBS" ]; then spack config add "config:build_jobs:$SPACK_BUILD_JOBS"; fi - spack config add "config:install_tree:projections:${SPACK_JOB_SPEC_PKG_NAME}:'morepadding/{architecture}/{compiler.name}-{compiler.version}/{name}-{version}-{hash}'" - mkdir -p ${SPACK_ARTIFACTS_ROOT}/user_data - if [[ -r /mnt/key/e4s.gpg ]]; then spack gpg trust /mnt/key/e4s.gpg; fi -- cgit v1.2.3-60-g2f50