Skip to content

Add dace backend to default CI pipeline#822

Merged
edopao merged 79 commits intomainfrom
enable_dace_ci_tests
Sep 15, 2025
Merged

Add dace backend to default CI pipeline#822
edopao merged 79 commits intomainfrom
enable_dace_ci_tests

Conversation

@edopao
Copy link
Contributor

@edopao edopao commented Jul 31, 2025

This PR enables CI tests on the dace backend.

  • In the Github Actions, we run the stencil tests on the CPU backend.
  • In the CSCS CI, we run the tests with serialized data on the GPU backend, only for diffusion and dycore in order to save compute resources.

@edopao
Copy link
Contributor Author

edopao commented Jul 31, 2025

cscs-ci run default

@edopao
Copy link
Contributor Author

edopao commented Jul 31, 2025

cscs-ci run default

@edopao
Copy link
Contributor Author

edopao commented Jul 31, 2025

cscs-ci run dace

@edopao edopao marked this pull request as ready for review July 31, 2025 10:06
@edopao
Copy link
Contributor Author

edopao commented Jul 31, 2025

cscs-ci run default

@edopao edopao requested a review from havogt July 31, 2025 15:02
@edopao
Copy link
Contributor Author

edopao commented Jul 31, 2025

@philip-paul-mueller The fix #820 should be merged first.

@edopao
Copy link
Contributor Author

edopao commented Aug 2, 2025

cscs-ci run dace

pyproject.toml Outdated
[tool.uv.sources]
# ghex = {git = "https://github.com/ghex-org/GHEX.git", branch = "master"}
# gt4py = {git = "https://github.com/GridTools/gt4py", branch = "main"}
gt4py = {git = "https://github.com/edopao/gt4py", branch = "fix_let_lambda_with_origin"}
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Revert this change once the gt4py fix is merged and a new release tag is available.

@philip-paul-mueller
Copy link
Collaborator

philip-paul-mueller commented Aug 5, 2025

Needs:

As well as an update of the GT4Py dependency.

pyproject.toml Outdated
[tool.uv.sources]
# ghex = {git = "https://github.com/ghex-org/GHEX.git", branch = "master"}
# gt4py = {git = "https://github.com/GridTools/gt4py", branch = "main"}
dace = {git = "https://github.com/GridTools/dace", tag = "__gt4py-next-integration_2025_07_29"}
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am not sure if this is correct here.
GT4Py needs a specific DaCe version, set in GT4Py's pyproject.toml file. Furthermore, ICON4Py follows GT4Py main, i.e. not a specific tag or so.
This means that the DaCe version inherited through GT4Py and the one that is specified here, might be different.

@philip-paul-mueller
Copy link
Collaborator

cscs-ci run default

@philip-paul-mueller
Copy link
Collaborator

@havogt Should we also update the text that is posted, since the DaCe tests are now a subset of the default test or should we keep them?

@philip-paul-mueller
Copy link
Collaborator

cscs-ci run default

@philip-paul-mueller
Copy link
Collaborator

cscs-ci run default

philip-paul-mueller added a commit to GridTools/gt4py that referenced this pull request Aug 13, 2025
…Utility (#2215)

Before the rerouting utility did not handle library nodes. This PR adds
the capability to handle reduction nodes, not library nodes in general.
It solves the error observed in [ICON4Py PR#822](C2SM/icon4py#822).
@edopao
Copy link
Contributor Author

edopao commented Sep 12, 2025

cscs-ci run default

@edopao
Copy link
Contributor Author

edopao commented Sep 12, 2025

cscs-ci run dace

@edopao
Copy link
Contributor Author

edopao commented Sep 12, 2025

cscs-ci run default

@edopao
Copy link
Contributor Author

edopao commented Sep 12, 2025

cscs-ci run dace

@edopao
Copy link
Contributor Author

edopao commented Sep 15, 2025

cscs-ci run default

@edopao
Copy link
Contributor Author

edopao commented Sep 15, 2025

cscs-ci run dace

@edopao
Copy link
Contributor Author

edopao commented Sep 15, 2025

cscs-ci run default

@edopao
Copy link
Contributor Author

edopao commented Sep 15, 2025

cscs-ci run default

@edopao
Copy link
Contributor Author

edopao commented Sep 15, 2025

cscs-ci run default

1 similar comment
@edopao
Copy link
Contributor Author

edopao commented Sep 15, 2025

cscs-ci run default

@edopao
Copy link
Contributor Author

edopao commented Sep 15, 2025

cscs-ci run dace

@github-actions
Copy link

Mandatory Tests

Please make sure you run these tests via comment before you merge!

  • cscs-ci run default

Optional Tests

To run benchmarks you can use:

  • cscs-ci run benchmark-bencher

To run tests and benchmarks with the DaCe backend you can use:

  • cscs-ci run dace

To run test levels ignored by the default test suite (mostly simple datatest for static fields computations) you can use:

  • cscs-ci run extra

For more detailed information please look at CI in the EXCLAIM universe.

@edopao
Copy link
Contributor Author

edopao commented Sep 15, 2025

cscs-ci run default

Copy link
Contributor

@havogt havogt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

finally...

@edopao edopao merged commit 47ddf3b into main Sep 15, 2025
48 checks passed
@edopao edopao deleted the enable_dace_ci_tests branch September 15, 2025 18:35
DropD pushed a commit to DropD/icon4py that referenced this pull request Sep 18, 2025
This PR enables CI tests on the dace backend.
- In the Github Actions, we run the stencil tests on the CPU backend.
- In the CSCS CI, we run the tests with serialized data on the GPU
backend, only for diffusion and dycore in order to save compute
resources.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants