Create simpler versions of some test types and switch to them
- Dominant language
- Fortran
- Stars
- 352
- Forks
- 361
- Avg merge
- 6d 6h
- Merged PRs (30d)
- 8
Description
There are some cime test types that are more general / complex than what we need for CTSM (because this extra generality / complexity is needed for some other components or on specific systems, for example). I'd like to create and switch to simpler versions of these tests to speed up our testing and/or avoid possible problems.
- [ ] PET (threading): this test does a separate job submission for the second run, I think just because that was needed on one E3SM test platform (see https://github.com/ESMCI/cime/pull/3924#issuecomment-818075389). The multisubmit logic in cime is complex and subtle, and I am not always confident that it is working right. I'd like to introduce a new test that is just like the PET test but with multisubmit=False. I think this could be done by:
- introducing a PETS (or some other name) test that inherits from PET, but with a different init method
- add this in config_tests.xml
- test to make sure the test works correctly: make sure this runs the first test threaded, the second test unthreaded
- [ ] ERP: this test does two builds, but I think that's only needed for certain components that need to be rebuilt when changing the number of tasks. I noticed that CAM has created a version of the ERP test that does a single build (https://github.com/ESCOMP/CAM/blob/26bd3868cb4505a2f4bccdf38ddeec5116d28e19/cime_config/SystemTests/erc.py). I think we should encourage CAM to move that into CIME where we could use it as well. Ideally we'd refactor this to avoid duplicating the code of ERP: similarly to my suggestion for PET above, they should use the same code but just change the separate_builds init argument, if possible.
- [ ] PEM: Similarly to ERP, I don't think we need separate builds for land-only cases
Contributor guide
Assessment
This issue has not been assessed yet.