CI: unit tests and the validation battery take turns on the GPU

Both run on the same runner machine and its one GPU. In run 380387 the unit-test job reached
Rugnux_FirstPassMemoMatchesRecomputation while the battery job (same runner, same minute) was
processing one of its larger sets; the FFT indexer's cuFFT plan found 0.1 of 15.6 GB free and the
test failed, as a GPU out-of-memory is meant to. The unit-test job joins the battery's concurrency
group, so the two no longer overlap (which also keeps the battery's timings clean).

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EizBKhTqrAYago9KJG3dA3
This commit is contained in:
2026-10-12 12:59:55 +02:00
co-authored by Claude Opus 5.5
parent d172f22074
commit 140739a69f
+6
View File
@@ -411,6 +411,12 @@ jobs:
# was not already run, and a release build is the one case where the wait is pure delay.
if: "!(github.event_name == 'workflow_dispatch' && (github.event.inputs.create_release == 'true' || github.event.inputs.create_release == true))"
runs-on: jfjoch_rocky8
# The battery (battery.yml) runs on the same machine and GPU, and its rugnux takes the card's
# memory as its sets need it: a GPU test beside it finds the card full, and a GPU out-of-memory
# ends the run by design. One at a time, in the battery's own concurrency group.
concurrency:
group: battery
cancel-in-progress: false
container:
image: gitea.psi.ch/leonarski_f/jfjoch_rocky8:2609
options: --gpus all