Skip to content

CI Updates - Include reference comparison#917

Merged
baperry2 merged 12 commits intoAMReX-Combustion:developmentfrom
baperry2:ci-updates
Apr 16, 2025
Merged

CI Updates - Include reference comparison#917
baperry2 merged 12 commits intoAMReX-Combustion:developmentfrom
baperry2:ci-updates

Conversation

@baperry2
Copy link
Copy Markdown
Contributor

@baperry2 baperry2 commented Apr 11, 2025

With nightly tests not running regularly, it's possible new PRs could be changing behavior without us realizing. The goal here is to add a comparison of simulation output to the current development branch as part of the CI.

This is done in a similar manner to the PeleLMeX unit tests: by checking out and building a reference copy of PeleLMeX and re-running reference cases for comparison as part of the CI. But here, we use CMake and the capability for comparison to gold files. This definitely isn't the most computationally efficient approach relative to storing gold files, but it is easy to implement and isn't horrible. It is only done for the macos-release test run.

To keep overall time for testing down, I split the 2D and 3D tests accross different runners so that they can go in parallel.

@jrood-nrel: I ignored ccache stuff in this implementation because I don't really understand how it works, but maybe that could help accelerate this?

The second to last commit in this PR has a change that causes the reference plotfile test to fail as a demonstration. That change is reverted in the final commit, showing the expected behavior where all comparisons pass.

@baperry2 baperry2 requested review from jrood-nrel and marchdf April 11, 2025 22:09
@jrood-nrel
Copy link
Copy Markdown
Contributor

This is cool. Before I approve I'm going to request that the reference step is split into more steps though. Looking through test results is difficult otherwise. Also you can put ccache -z and ccache -s in like the other steps to see how many hits you get. Ccache looks like it should be working for the reference build. We might just need to increase the cache size for that case, which we can do later.

@jrood-nrel
Copy link
Copy Markdown
Contributor

After some thought, in the future, I bet we could easily cache the gold files from the development branch after each merge and just compare against them.

@jrood-nrel jrood-nrel self-requested a review April 16, 2025 15:41
@baperry2 baperry2 merged commit 343b8ef into AMReX-Combustion:development Apr 16, 2025
15 checks passed
@baperry2 baperry2 deleted the ci-updates branch April 16, 2025 15:50
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.

2 participants