Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
65433b7
Reenable MPS in CI
msimberg Feb 12, 2026
6334ff5
Increase default pytest workers for CPU builds
msimberg Feb 12, 2026
6e4a674
Use 8 pytest workers for all GPU backends
msimberg Feb 12, 2026
e8a1f94
Use persistent gt4py build cache
msimberg Feb 12, 2026
1b2c41a
Limit pytest processes for GPU backends also in stencil tests
msimberg Feb 12, 2026
5eb0490
Explicitly set CUDA_DEVICE_MAX*CONNECTIONS variables to higher than d…
msimberg Feb 12, 2026
075a7e1
Adjust dace NUM_PROCESSES
msimberg Feb 12, 2026
4cddb51
Merge remote-tracking branch 'origin/main' into reenable-mps
msimberg Feb 24, 2026
261bc11
Slightly increase time limit
msimberg Feb 24, 2026
8b13476
Still longer time limits
msimberg Feb 24, 2026
d7f4975
More time
msimberg Feb 24, 2026
8ab35d9
Fix num processes for dace_gpu
msimberg Feb 24, 2026
bf71ac0
Update comment about pytest workers
msimberg Feb 25, 2026
41cb65b
Merge remote-tracking branch 'origin/main' into reenable-mps
msimberg Feb 25, 2026
891f4a9
Update ci/dace.yml
msimberg Feb 25, 2026
089f026
Merge branch 'main' into reenable-mps
edopao Feb 26, 2026
464fc7e
Longer timeout for muphys
msimberg Feb 26, 2026
8f67d51
Attempt to combine CI jobs
msimberg Feb 26, 2026
19796ba
Use --dist=worksteal for pytest
msimberg Feb 27, 2026
2ea7690
Slightly increase number of pytest workers for gpu backends in CI
msimberg Feb 27, 2026
8160b4b
Temporarily only run gpu backends in CI
msimberg Feb 27, 2026
2df8b27
Merge remote-tracking branch 'origin/main' into combine-tests-ci
msimberg Feb 27, 2026
2da6d98
Try more pytest workers for GPU backends
msimberg Feb 27, 2026
04aee82
Increase pytest workers further
msimberg Feb 27, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 7 additions & 6 deletions ci/default.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ include:
rules:
- if: $BACKEND == 'dace_gpu' || $BACKEND == 'gtfn_gpu'
variables:
NUM_PROCESSES: 8
NUM_PROCESSES: 14
SLURM_TIMELIMIT: '00:30:00'
- if: $COMPONENT == 'dycore'
variables:
Expand All @@ -18,7 +18,7 @@ include:
SLURM_TIMELIMIT: '00:05:00'
parallel:
matrix:
- COMPONENT: [diffusion, dycore, microphysics, muphys, common, driver]
- COMPONENT: [all]
BACKEND: [gtfn_gpu]
GRID: [simple, icon_regional]
# test_model_stencils_x86_64:
Expand Down Expand Up @@ -47,8 +47,8 @@ test_tools_datatests_aarch64:
when: never # run only in daily CI, to save compute resources
- if: $BACKEND == 'dace_gpu' || $BACKEND == 'gtfn_gpu'
variables:
NUM_PROCESSES: 8
SLURM_TIMELIMIT: '00:30:00'
NUM_PROCESSES: 14
SLURM_TIMELIMIT: '01:30:00'
- if: $COMPONENT == 'driver' || $COMPONENT == 'dycore' || $COMPONENT == 'muphys'
variables:
SLURM_TIMELIMIT: '00:30:00'
Expand All @@ -60,8 +60,9 @@ test_tools_datatests_aarch64:
SLURM_TIMELIMIT: '00:10:00'
parallel:
matrix:
- COMPONENT: [advection, diffusion, dycore, microphysics, muphys, common, driver, standalone_driver]
BACKEND: [embedded, dace_gpu, gtfn_cpu, gtfn_gpu]
- COMPONENT: [all]
# BACKEND: [embedded, dace_gpu, gtfn_cpu, gtfn_gpu]
BACKEND: [dace_gpu, gtfn_gpu]
LEVEL: [integration]
# test_model_datatests_x86_64:
# extends: [.test_model_datatests, .test_template_x86_64]
Expand Down
8 changes: 5 additions & 3 deletions noxfile.py
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@

# -- Parameter sets --
ModelSubpackagePath: TypeAlias = Literal[
"all",
"atmosphere/advection",
"atmosphere/diffusion",
"atmosphere/dycore",
Expand Down Expand Up @@ -152,9 +153,10 @@ def test_model(
_install_session_venv(session, extras=["fortran", "io", "testing"], groups=["test"])

pytest_args = _selection_to_pytest_args(selection)
with session.chdir(f"model/{subpackage}"):
test_dir = "model" if subpackage == "all" else f"model/{subpackage}"
with session.chdir(test_dir):
session.run(
*f"pytest -sv --benchmark-disable -n {os.environ.get('NUM_PROCESSES', 'auto')}".split(),
*f"pytest -sv --benchmark-disable --dist=worksteal -n {os.environ.get('NUM_PROCESSES', 'auto')}".split(),
*pytest_args,
*session.posargs,
success_codes=[0, NO_TESTS_COLLECTED_EXIT_CODE],
Expand Down Expand Up @@ -188,7 +190,7 @@ def test_tools(session: nox.Session, datatest: bool) -> None:

with session.chdir("tools"):
session.run(
*f"pytest -sv --benchmark-disable -n {os.environ.get('NUM_PROCESSES', 'auto')} {'--datatest-only' if datatest else '--datatest-skip'}".split(),
*f"pytest -sv --benchmark-disable --dist=worksteal -n {os.environ.get('NUM_PROCESSES', 'auto')} {'--datatest-only' if datatest else '--datatest-skip'}".split(),
*session.posargs,
)

Expand Down