From 06b498fa2a183e98bad66963e003936ab067019e Mon Sep 17 00:00:00 2001 From: Wouter Deconinck Date: Sat, 25 Apr 2026 12:54:53 -0500 Subject: [PATCH 01/15] feat: run a job on HTCondor --- .gitlab-ci.yml | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index ae1a36c4..7051a035 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -79,6 +79,17 @@ benchmarks:detector:pending: STATE: "pending" when: always +common:htcondor_test1: + stage: config + tags: + - osg + - jacamar + script: + - | + echo "Test started" + sleep 60 + echo "Test done" + common:setup: stage: config before_script: From 5dc35318b9f7daffc71c3b623ed3208cb61beb3e Mon Sep 17 00:00:00 2001 From: Wouter Deconinck Date: Sun, 26 Apr 2026 14:35:22 -0500 Subject: [PATCH 02/15] fix: add CI_JOB_JWT to default job config --- .gitlab-ci.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 7051a035..cb8711cd 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -38,6 +38,9 @@ default: reports: dotenv: .env when: always + id_tokens: + CI_JOB_JWT: + aud: https://eicweb.phy.anl.gov stages: - status-pending From 5b9b7ed13f2f35602ddce9f94a9f8ef5e7d13a8b Mon Sep 17 00:00:00 2001 From: Wouter Deconinck Date: Sun, 26 Apr 2026 20:03:19 -0500 Subject: [PATCH 03/15] feat: move on to test with depedencies --- .gitlab-ci.yml | 42 +++++++++++++++++++++++++++++++----------- 1 file changed, 31 insertions(+), 11 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index cb8711cd..2120d91f 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -82,17 +82,6 @@ benchmarks:detector:pending: STATE: "pending" when: always -common:htcondor_test1: - stage: config - tags: - - osg - - jacamar - script: - - | - echo "Test started" - sleep 60 - echo "Test done" - common:setup: stage: config before_script: @@ -137,6 +126,37 @@ common:setup: when: - runner_system_failure +.det_benchmark:htcondor: + needs: + - ["common:setup:osg"] + before_script: + - source .local/bin/env.sh + - source /opt/detector/epic-main/bin/thisepic.sh + - ls -lrtha + - mkdir -p sim_output + # snakemake support + - mkdir -p "${DETECTOR_CONFIG}" + - mkdir -p "${DETECTOR_CONFIG}/sim_output" + - ln -s "../results" "${DETECTOR_CONFIG}/results" + - mkdir -p "$SNAKEMAKE_OUTPUT_CACHE" + - ls -lrtha + retry: + max: 2 + when: + - runner_system_failure + +sim:htcondor_test2: + extends: .det_benchmark:htcondor + stage: simulate + tags: + - osg + - jacamar + script: + - | + echo "Test started" + sleep 60 + echo "Test done" + include: - local: 'benchmarks/backgrounds/config.yml' - local: 'benchmarks/backwards_ecal/config.yml' From 40f40ce82f91b419c1af6d1778cf8f69f7497186 Mon Sep 17 00:00:00 2001 From: Wouter Deconinck Date: Sun, 26 Apr 2026 20:04:29 -0500 Subject: [PATCH 04/15] fix: use existing job as dependency --- .gitlab-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 2120d91f..292e8bad 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -128,7 +128,7 @@ common:setup: .det_benchmark:htcondor: needs: - - ["common:setup:osg"] + - ["common:setup"] before_script: - source .local/bin/env.sh - source /opt/detector/epic-main/bin/thisepic.sh From 394f093d8e6196019b3520b3dbab5e37058f0118 Mon Sep 17 00:00:00 2001 From: Wouter Deconinck Date: Mon, 27 Apr 2026 11:54:32 -0500 Subject: [PATCH 05/15] fix: set -x in before_script for det_benchmark:htcondor --- .gitlab-ci.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 292e8bad..3e48f055 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -130,6 +130,7 @@ common:setup: needs: - ["common:setup"] before_script: + - set -x - source .local/bin/env.sh - source /opt/detector/epic-main/bin/thisepic.sh - ls -lrtha From fcb59b6cbf2ab583b55938356064e0f98cca9c68 Mon Sep 17 00:00:00 2001 From: Wouter Deconinck Date: Sun, 10 May 2026 10:56:01 -0500 Subject: [PATCH 06/15] fix: re-set SNAKEMAKE_OUTPUT_CACHE if not writable --- .gitlab-ci.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 3e48f055..55ab67dc 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -119,6 +119,9 @@ common:setup: - mkdir "${DETECTOR_CONFIG}" - ln -s "${LOCAL_DATA_PATH}/sim_output" "${DETECTOR_CONFIG}/sim_output" - ln -s "../results" "${DETECTOR_CONFIG}/results" + - if [ ! -w "$SNAKEMAKE_OUTPUT_CACHE" ] ; then + export SNAKEMAKE_OUTPUT_CACHE=${LOCAL_DATA_PATH}/snakemake-cache ; + endif - mkdir -p "$SNAKEMAKE_OUTPUT_CACHE" - ls -lrtha retry: From c39670d66526940256cc0435e82dfcf9aaacfdde Mon Sep 17 00:00:00 2001 From: Wouter Deconinck Date: Sun, 10 May 2026 15:50:53 -0500 Subject: [PATCH 07/15] fix: guard .det_benchmark:htcondor for non-writable /scratch Add check for writable SNAKEMAKE_OUTPUT_CACHE and set it if not writable. --- .gitlab-ci.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 55ab67dc..fe38ef25 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -142,6 +142,9 @@ common:setup: - mkdir -p "${DETECTOR_CONFIG}" - mkdir -p "${DETECTOR_CONFIG}/sim_output" - ln -s "../results" "${DETECTOR_CONFIG}/results" + - if [ ! -w "$SNAKEMAKE_OUTPUT_CACHE" ] ; then + export SNAKEMAKE_OUTPUT_CACHE=${LOCAL_DATA_PATH}/snakemake-cache ; + endif - mkdir -p "$SNAKEMAKE_OUTPUT_CACHE" - ls -lrtha retry: From a62322c4bdd36e4a8dd54dbb96513e0d1bf17c52 Mon Sep 17 00:00:00 2001 From: Wouter Deconinck Date: Sun, 10 May 2026 15:57:20 -0500 Subject: [PATCH 08/15] fix: bash syntax --- .gitlab-ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index fe38ef25..e26b81ec 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -121,7 +121,7 @@ common:setup: - ln -s "../results" "${DETECTOR_CONFIG}/results" - if [ ! -w "$SNAKEMAKE_OUTPUT_CACHE" ] ; then export SNAKEMAKE_OUTPUT_CACHE=${LOCAL_DATA_PATH}/snakemake-cache ; - endif + fi - mkdir -p "$SNAKEMAKE_OUTPUT_CACHE" - ls -lrtha retry: @@ -144,7 +144,7 @@ common:setup: - ln -s "../results" "${DETECTOR_CONFIG}/results" - if [ ! -w "$SNAKEMAKE_OUTPUT_CACHE" ] ; then export SNAKEMAKE_OUTPUT_CACHE=${LOCAL_DATA_PATH}/snakemake-cache ; - endif + fi - mkdir -p "$SNAKEMAKE_OUTPUT_CACHE" - ls -lrtha retry: From 250fe1ad22a1739c9f89f0ba651109af39a447bb Mon Sep 17 00:00:00 2001 From: Wouter Deconinck Date: Sun, 10 May 2026 16:17:19 -0500 Subject: [PATCH 09/15] fix: mv bench:campaign to htcondor --- benchmarks/campaign/config.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/benchmarks/campaign/config.yml b/benchmarks/campaign/config.yml index 3d1942b2..d34ab53a 100644 --- a/benchmarks/campaign/config.yml +++ b/benchmarks/campaign/config.yml @@ -1,5 +1,5 @@ bench:campaign: - extends: .det_benchmark + extends: .det_benchmark:htcondor stage: benchmarks script: - snakemake $SNAKEMAKE_FLAGS --cores 1 campaign_benchmark From 2608b698ecaaee93f2ec6d1d462b180576fe423c Mon Sep 17 00:00:00 2001 From: Wouter Deconinck Date: Sun, 10 May 2026 16:44:22 -0500 Subject: [PATCH 10/15] fix: mv collect_results:campaign to htcondor --- benchmarks/campaign/config.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/benchmarks/campaign/config.yml b/benchmarks/campaign/config.yml index d34ab53a..6a05d472 100644 --- a/benchmarks/campaign/config.yml +++ b/benchmarks/campaign/config.yml @@ -5,7 +5,7 @@ bench:campaign: - snakemake $SNAKEMAKE_FLAGS --cores 1 campaign_benchmark collect_results:campaign: - extends: .det_benchmark + extends: .det_benchmark:htcondor stage: collect needs: - "bench:campaign" From 4afda6eff2ea3efa05b9053fd26b3f1fdf877c6f Mon Sep 17 00:00:00 2001 From: Wouter Deconinck Date: Sun, 10 May 2026 16:52:01 -0500 Subject: [PATCH 11/15] fix: add tags to .det_benchmarks:htcondor Removed redundant setup steps for the benchmark job and simplified the CI configuration. --- .gitlab-ci.yml | 31 +------------------------------ 1 file changed, 1 insertion(+), 30 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index e26b81ec..95d2d1ea 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -130,39 +130,10 @@ common:setup: - runner_system_failure .det_benchmark:htcondor: - needs: - - ["common:setup"] - before_script: - - set -x - - source .local/bin/env.sh - - source /opt/detector/epic-main/bin/thisepic.sh - - ls -lrtha - - mkdir -p sim_output - # snakemake support - - mkdir -p "${DETECTOR_CONFIG}" - - mkdir -p "${DETECTOR_CONFIG}/sim_output" - - ln -s "../results" "${DETECTOR_CONFIG}/results" - - if [ ! -w "$SNAKEMAKE_OUTPUT_CACHE" ] ; then - export SNAKEMAKE_OUTPUT_CACHE=${LOCAL_DATA_PATH}/snakemake-cache ; - fi - - mkdir -p "$SNAKEMAKE_OUTPUT_CACHE" - - ls -lrtha - retry: - max: 2 - when: - - runner_system_failure - -sim:htcondor_test2: - extends: .det_benchmark:htcondor - stage: simulate + extends: .det_benchmark tags: - osg - jacamar - script: - - | - echo "Test started" - sleep 60 - echo "Test done" include: - local: 'benchmarks/backgrounds/config.yml' From 0111cce98f9b950c3c90cbb9c769b7c7abdc40c7 Mon Sep 17 00:00:00 2001 From: Wouter Deconinck Date: Sun, 10 May 2026 16:42:19 -0500 Subject: [PATCH 12/15] fix: mv material_scan and rich benchmarks to htcondor Both benchmarks have no simulate stage and no sim_output dependency: - material_scan: runs a Python geometry scan against detector XML - rich: cmake build + ruby benchmark script, self-contained Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- benchmarks/material_scan/config.yml | 4 ++-- benchmarks/rich/config.yml | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/benchmarks/material_scan/config.yml b/benchmarks/material_scan/config.yml index 894a369f..67794a6a 100644 --- a/benchmarks/material_scan/config.yml +++ b/benchmarks/material_scan/config.yml @@ -1,11 +1,11 @@ bench:material_scan: - extends: .det_benchmark + extends: .det_benchmark:htcondor stage: benchmarks script: - snakemake $SNAKEMAKE_FLAGS --cores 1 results/material_scan/epic_craterlake/material_scan_details.pdf collect_results:material_scan: - extends: .det_benchmark + extends: .det_benchmark:htcondor stage: collect needs: - ["bench:material_scan"] diff --git a/benchmarks/rich/config.yml b/benchmarks/rich/config.yml index 57a92b9a..eefcb646 100644 --- a/benchmarks/rich/config.yml +++ b/benchmarks/rich/config.yml @@ -1,5 +1,5 @@ bench:drich_fixed_eta: - extends: .det_benchmark + extends: .det_benchmark:htcondor stage: benchmarks script: - cmake -S benchmarks/rich -B build -DCMAKE_INSTALL_PREFIX=.local @@ -11,7 +11,7 @@ bench:drich_fixed_eta: done collect_results:rich: - extends: .det_benchmark + extends: .det_benchmark:htcondor stage: collect needs: - "bench:drich_fixed_eta" From 189591f0c427112e6b73e7b0524a7101969d38fb Mon Sep 17 00:00:00 2001 From: Wouter Deconinck Date: Sun, 10 May 2026 18:41:56 -0500 Subject: [PATCH 13/15] Apply Option A1 to femc_electron, femc_photon, femc_pi0 preserved for future independent use while enabling a single combined HTCondor job (sim_bench:femc_*) when BENCHMARK_RUNNER=htcondor. - Add .script:sim:femc_* and .script:bench:femc_* hidden templates - Gate sim:* and bench:* with rules: BENCHMARK_RUNNER != htcondor - Add sim_bench:* extending .det_benchmark:htcondor; bench snakemake target drives full DAG (gen/sim/recon/analysis) with MAX_CORES_PER_JOB - collect_results:* uses optional needs for both bench and sim_bench - Add BENCHMARK_RUNNER global variable (default empty) to .gitlab-ci.yml Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .gitlab-ci.yml | 1 + benchmarks/femc_electron/config.yml | 30 +++++++++++++++++++++++++--- benchmarks/femc_photon/config.yml | 30 +++++++++++++++++++++++++--- benchmarks/femc_pi0/config.yml | 31 ++++++++++++++++++++++++++--- 4 files changed, 83 insertions(+), 9 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 95d2d1ea..fb4122d6 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -3,6 +3,7 @@ image: ${BENCHMARKS_REGISTRY}/${BENCHMARKS_CONTAINER}${BENCHMARKS_SIGIL}${BENCHM variables: DETECTOR: epic DETECTOR_CONFIG: epic_craterlake + BENCHMARK_RUNNER: '' GITHUB_PR: '' GITHUB_REPOSITORY: '' GITHUB_SHA: '' diff --git a/benchmarks/femc_electron/config.yml b/benchmarks/femc_electron/config.yml index cf694e22..b36a8ad3 100644 --- a/benchmarks/femc_electron/config.yml +++ b/benchmarks/femc_electron/config.yml @@ -1,6 +1,16 @@ +.script:sim:femc_electron: + script: + - snakemake $SNAKEMAKE_FLAGS --cores 1 sim_output/femc_electron/epic_craterlake_rec_e-_${P}GeV.edm4eic.root + +.script:bench:femc_electron: + script: + - snakemake $SNAKEMAKE_FLAGS --cores $MAX_CORES_PER_JOB results/epic_craterlake/femc_electron + sim:femc_electron: extends: .det_benchmark stage: simulate + rules: + - if: $BENCHMARK_RUNNER != "htcondor" parallel: matrix: - P: 10 @@ -13,7 +23,7 @@ sim:femc_electron: - P: 80 timeout: 1 hours script: - - snakemake $SNAKEMAKE_FLAGS --cores 1 sim_output/femc_electron/epic_craterlake_rec_e-_${P}GeV.edm4eic.root + - !reference [.script:sim:femc_electron, script] retry: max: 2 when: @@ -23,15 +33,29 @@ bench:femc_electron: extends: .det_benchmark allow_failure: true # snooze until https://github.com/eic/detector_benchmarks/issues/186 is resolved stage: benchmarks + rules: + - if: $BENCHMARK_RUNNER != "htcondor" needs: ["sim:femc_electron"] script: - - snakemake $SNAKEMAKE_FLAGS --cores 1 results/epic_craterlake/femc_electron + - !reference [.script:bench:femc_electron, script] + +sim_bench:femc_electron: + extends: .det_benchmark:htcondor + stage: benchmarks + rules: + - if: $BENCHMARK_RUNNER == "htcondor" + script: + - !reference [.script:bench:femc_electron, script] collect_results:femc_electron: extends: .det_benchmark allow_failure: true # snooze until https://github.com/eic/detector_benchmarks/issues/186 is resolved stage: collect - needs: ["bench:femc_electron"] + needs: + - job: "bench:femc_electron" + optional: true + - job: "sim_bench:femc_electron" + optional: true when: always script: - ls -al diff --git a/benchmarks/femc_photon/config.yml b/benchmarks/femc_photon/config.yml index 8480c5ec..a327ccef 100644 --- a/benchmarks/femc_photon/config.yml +++ b/benchmarks/femc_photon/config.yml @@ -1,6 +1,16 @@ +.script:sim:femc_photon: + script: + - snakemake $SNAKEMAKE_FLAGS --cores 1 sim_output/femc_photon/epic_craterlake_rec_photon_${P}GeV.edm4eic.root + +.script:bench:femc_photon: + script: + - snakemake $SNAKEMAKE_FLAGS --cores $MAX_CORES_PER_JOB results/epic_craterlake/femc_photon + sim:femc_photon: extends: .det_benchmark stage: simulate + rules: + - if: $BENCHMARK_RUNNER != "htcondor" parallel: matrix: - P: 10 @@ -13,7 +23,7 @@ sim:femc_photon: - P: 80 timeout: 1 hours script: - - snakemake $SNAKEMAKE_FLAGS --cores 1 sim_output/femc_photon/epic_craterlake_rec_photon_${P}GeV.edm4eic.root + - !reference [.script:sim:femc_photon, script] retry: max: 2 when: @@ -22,14 +32,28 @@ sim:femc_photon: bench:femc_photon: extends: .det_benchmark stage: benchmarks + rules: + - if: $BENCHMARK_RUNNER != "htcondor" needs: ["sim:femc_photon"] script: - - snakemake $SNAKEMAKE_FLAGS --cores 1 results/epic_craterlake/femc_photon + - !reference [.script:bench:femc_photon, script] + +sim_bench:femc_photon: + extends: .det_benchmark:htcondor + stage: benchmarks + rules: + - if: $BENCHMARK_RUNNER == "htcondor" + script: + - !reference [.script:bench:femc_photon, script] collect_results:femc_photon: extends: .det_benchmark stage: collect - needs: ["bench:femc_photon"] + needs: + - job: "bench:femc_photon" + optional: true + - job: "sim_bench:femc_photon" + optional: true when: always script: - ls -al diff --git a/benchmarks/femc_pi0/config.yml b/benchmarks/femc_pi0/config.yml index 626922b1..b58a34e4 100644 --- a/benchmarks/femc_pi0/config.yml +++ b/benchmarks/femc_pi0/config.yml @@ -1,6 +1,16 @@ +.script:sim:femc_pi0: + script: + - snakemake $SNAKEMAKE_FLAGS --cores 1 sim_output/femc_pi0/epic_craterlake_rec_pi0_${P}GeV.edm4eic.root + +.script:bench:femc_pi0: + script: + - snakemake $SNAKEMAKE_FLAGS --cores $MAX_CORES_PER_JOB results/epic_craterlake/femc_pi0 + sim:femc_pi0: extends: .det_benchmark stage: simulate + rules: + - if: $BENCHMARK_RUNNER != "htcondor" parallel: matrix: - P: 10 @@ -12,7 +22,7 @@ sim:femc_pi0: - P: 70 - P: 80 script: - - snakemake $SNAKEMAKE_FLAGS --cores 1 sim_output/femc_pi0/epic_craterlake_rec_pi0_${P}GeV.edm4eic.root + - !reference [.script:sim:femc_pi0, script] retry: max: 2 when: @@ -22,15 +32,30 @@ bench:femc_pi0: extends: .det_benchmark stage: benchmarks allow_failure: true # snooze until https://github.com/eic/detector_benchmarks/issues/186 is resolved + rules: + - if: $BENCHMARK_RUNNER != "htcondor" needs: ["sim:femc_pi0"] script: - - snakemake $SNAKEMAKE_FLAGS --cores 1 results/epic_craterlake/femc_pi0 + - !reference [.script:bench:femc_pi0, script] + +sim_bench:femc_pi0: + extends: .det_benchmark:htcondor + stage: benchmarks + allow_failure: true # snooze until https://github.com/eic/detector_benchmarks/issues/186 is resolved + rules: + - if: $BENCHMARK_RUNNER == "htcondor" + script: + - !reference [.script:bench:femc_pi0, script] collect_results:femc_pi0: extends: .det_benchmark stage: collect allow_failure: true # snooze until https://github.com/eic/detector_benchmarks/issues/186 is resolved - needs: ["bench:femc_pi0"] + needs: + - job: "bench:femc_pi0" + optional: true + - job: "sim_bench:femc_pi0" + optional: true when: always script: - ls -al From d5c072c09de9c516305f81dbca8934382b8f5eb1 Mon Sep 17 00:00:00 2001 From: Wouter Deconinck Date: Sun, 10 May 2026 18:49:46 -0500 Subject: [PATCH 14/15] Pass BENCHMARK_RUNNER=htcondor from GitHub trigger Add BENCHMARK_RUNNER as a workflow_dispatch input (default: htcondor) and pass it in the GitLab CI trigger variables. Non-dispatch events (push, PR) also default to htcondor via the || 'htcondor' fallback. This activates the sim_bench:* HTCondor jobs and gates the local-runner sim:*/bench:* jobs out when the pipeline runs on this branch. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .github/workflows/mirror.yaml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.github/workflows/mirror.yaml b/.github/workflows/mirror.yaml index d9bca11b..6d8de170 100644 --- a/.github/workflows/mirror.yaml +++ b/.github/workflows/mirror.yaml @@ -9,6 +9,10 @@ on: description: 'common_bench branch/tag to use' required: false default: '' + BENCHMARK_RUNNER: + description: 'Runner backend to use (htcondor or empty for local)' + required: false + default: 'htcondor' SOURCE_REPOSITORY: description: 'Repository to report status to (owner/repo)' required: false @@ -65,6 +69,7 @@ jobs: GITHUB_PR=${{ inputs.SOURCE_PR || github.event.pull_request.number }} PIPELINE_NAME=${{ inputs.SOURCE_REPOSITORY || github.repository }}: ${{ inputs.SOURCE_TITLE || github.event.pull_request.title || github.ref_name }} COMMON_BENCH_VERSION=${{ inputs.COMMON_BENCH_VERSION }} + BENCHMARK_RUNNER=${{ inputs.BENCHMARK_RUNNER || 'htcondor' }} - name: Set pending EICweb status if: ${{ github.event_name != 'delete' && !inputs.SOURCE_SHA }} env: From 17a3ab83bb41ffba93eb0dab872f0be8ab8e0715 Mon Sep 17 00:00:00 2001 From: Wouter Deconinck Date: Wed, 13 May 2026 15:39:36 -0500 Subject: [PATCH 15/15] Revert "Apply Option A1 to femc_electron, femc_photon, femc_pi0" This reverts commit 189591f0c427112e6b73e7b0524a7101969d38fb. --- .gitlab-ci.yml | 1 - benchmarks/femc_electron/config.yml | 30 +++------------------------- benchmarks/femc_photon/config.yml | 30 +++------------------------- benchmarks/femc_pi0/config.yml | 31 +++-------------------------- 4 files changed, 9 insertions(+), 83 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index fb4122d6..95d2d1ea 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -3,7 +3,6 @@ image: ${BENCHMARKS_REGISTRY}/${BENCHMARKS_CONTAINER}${BENCHMARKS_SIGIL}${BENCHM variables: DETECTOR: epic DETECTOR_CONFIG: epic_craterlake - BENCHMARK_RUNNER: '' GITHUB_PR: '' GITHUB_REPOSITORY: '' GITHUB_SHA: '' diff --git a/benchmarks/femc_electron/config.yml b/benchmarks/femc_electron/config.yml index b36a8ad3..cf694e22 100644 --- a/benchmarks/femc_electron/config.yml +++ b/benchmarks/femc_electron/config.yml @@ -1,16 +1,6 @@ -.script:sim:femc_electron: - script: - - snakemake $SNAKEMAKE_FLAGS --cores 1 sim_output/femc_electron/epic_craterlake_rec_e-_${P}GeV.edm4eic.root - -.script:bench:femc_electron: - script: - - snakemake $SNAKEMAKE_FLAGS --cores $MAX_CORES_PER_JOB results/epic_craterlake/femc_electron - sim:femc_electron: extends: .det_benchmark stage: simulate - rules: - - if: $BENCHMARK_RUNNER != "htcondor" parallel: matrix: - P: 10 @@ -23,7 +13,7 @@ sim:femc_electron: - P: 80 timeout: 1 hours script: - - !reference [.script:sim:femc_electron, script] + - snakemake $SNAKEMAKE_FLAGS --cores 1 sim_output/femc_electron/epic_craterlake_rec_e-_${P}GeV.edm4eic.root retry: max: 2 when: @@ -33,29 +23,15 @@ bench:femc_electron: extends: .det_benchmark allow_failure: true # snooze until https://github.com/eic/detector_benchmarks/issues/186 is resolved stage: benchmarks - rules: - - if: $BENCHMARK_RUNNER != "htcondor" needs: ["sim:femc_electron"] script: - - !reference [.script:bench:femc_electron, script] - -sim_bench:femc_electron: - extends: .det_benchmark:htcondor - stage: benchmarks - rules: - - if: $BENCHMARK_RUNNER == "htcondor" - script: - - !reference [.script:bench:femc_electron, script] + - snakemake $SNAKEMAKE_FLAGS --cores 1 results/epic_craterlake/femc_electron collect_results:femc_electron: extends: .det_benchmark allow_failure: true # snooze until https://github.com/eic/detector_benchmarks/issues/186 is resolved stage: collect - needs: - - job: "bench:femc_electron" - optional: true - - job: "sim_bench:femc_electron" - optional: true + needs: ["bench:femc_electron"] when: always script: - ls -al diff --git a/benchmarks/femc_photon/config.yml b/benchmarks/femc_photon/config.yml index a327ccef..8480c5ec 100644 --- a/benchmarks/femc_photon/config.yml +++ b/benchmarks/femc_photon/config.yml @@ -1,16 +1,6 @@ -.script:sim:femc_photon: - script: - - snakemake $SNAKEMAKE_FLAGS --cores 1 sim_output/femc_photon/epic_craterlake_rec_photon_${P}GeV.edm4eic.root - -.script:bench:femc_photon: - script: - - snakemake $SNAKEMAKE_FLAGS --cores $MAX_CORES_PER_JOB results/epic_craterlake/femc_photon - sim:femc_photon: extends: .det_benchmark stage: simulate - rules: - - if: $BENCHMARK_RUNNER != "htcondor" parallel: matrix: - P: 10 @@ -23,7 +13,7 @@ sim:femc_photon: - P: 80 timeout: 1 hours script: - - !reference [.script:sim:femc_photon, script] + - snakemake $SNAKEMAKE_FLAGS --cores 1 sim_output/femc_photon/epic_craterlake_rec_photon_${P}GeV.edm4eic.root retry: max: 2 when: @@ -32,28 +22,14 @@ sim:femc_photon: bench:femc_photon: extends: .det_benchmark stage: benchmarks - rules: - - if: $BENCHMARK_RUNNER != "htcondor" needs: ["sim:femc_photon"] script: - - !reference [.script:bench:femc_photon, script] - -sim_bench:femc_photon: - extends: .det_benchmark:htcondor - stage: benchmarks - rules: - - if: $BENCHMARK_RUNNER == "htcondor" - script: - - !reference [.script:bench:femc_photon, script] + - snakemake $SNAKEMAKE_FLAGS --cores 1 results/epic_craterlake/femc_photon collect_results:femc_photon: extends: .det_benchmark stage: collect - needs: - - job: "bench:femc_photon" - optional: true - - job: "sim_bench:femc_photon" - optional: true + needs: ["bench:femc_photon"] when: always script: - ls -al diff --git a/benchmarks/femc_pi0/config.yml b/benchmarks/femc_pi0/config.yml index b58a34e4..626922b1 100644 --- a/benchmarks/femc_pi0/config.yml +++ b/benchmarks/femc_pi0/config.yml @@ -1,16 +1,6 @@ -.script:sim:femc_pi0: - script: - - snakemake $SNAKEMAKE_FLAGS --cores 1 sim_output/femc_pi0/epic_craterlake_rec_pi0_${P}GeV.edm4eic.root - -.script:bench:femc_pi0: - script: - - snakemake $SNAKEMAKE_FLAGS --cores $MAX_CORES_PER_JOB results/epic_craterlake/femc_pi0 - sim:femc_pi0: extends: .det_benchmark stage: simulate - rules: - - if: $BENCHMARK_RUNNER != "htcondor" parallel: matrix: - P: 10 @@ -22,7 +12,7 @@ sim:femc_pi0: - P: 70 - P: 80 script: - - !reference [.script:sim:femc_pi0, script] + - snakemake $SNAKEMAKE_FLAGS --cores 1 sim_output/femc_pi0/epic_craterlake_rec_pi0_${P}GeV.edm4eic.root retry: max: 2 when: @@ -32,30 +22,15 @@ bench:femc_pi0: extends: .det_benchmark stage: benchmarks allow_failure: true # snooze until https://github.com/eic/detector_benchmarks/issues/186 is resolved - rules: - - if: $BENCHMARK_RUNNER != "htcondor" needs: ["sim:femc_pi0"] script: - - !reference [.script:bench:femc_pi0, script] - -sim_bench:femc_pi0: - extends: .det_benchmark:htcondor - stage: benchmarks - allow_failure: true # snooze until https://github.com/eic/detector_benchmarks/issues/186 is resolved - rules: - - if: $BENCHMARK_RUNNER == "htcondor" - script: - - !reference [.script:bench:femc_pi0, script] + - snakemake $SNAKEMAKE_FLAGS --cores 1 results/epic_craterlake/femc_pi0 collect_results:femc_pi0: extends: .det_benchmark stage: collect allow_failure: true # snooze until https://github.com/eic/detector_benchmarks/issues/186 is resolved - needs: - - job: "bench:femc_pi0" - optional: true - - job: "sim_bench:femc_pi0" - optional: true + needs: ["bench:femc_pi0"] when: always script: - ls -al