-
Notifications
You must be signed in to change notification settings - Fork 6
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
CI Testing #29
Comments
Hopefully we'll be able to open up the Haero repo (and this one) soon. I have never been convinced that anything in either of these repos justifies them being private. |
Good news! Haero is now public. I had started on a simple CI configuration (GitHub Actions) for mam4xx. Maybe I can get that up and running now. |
Great! Let me know if you want to open a draft PR so we can debug together if needed |
Thanks, @cameronrutherford . See #30, where I set up an initial GitHub Actions workflow. It doesn't work because Haero has some submodules that need an SSH key. I'm pretty sure I've found ways to work around these issues in the past, but if you are adept at this, you might be able to take it to the finish line! Then we could just patch the PNNL GitLab stuff into this workflow, I'm guessing. |
Okay, #30 is in. So I think we have a dispatch point for a PNNL GitLab setup. |
Information on GitLab runners at NERSC: https://docs.nersc.gov/services/gitlab/ Note that Cori is going away very soon, so hopefully they will offer a Perlmutter option. I don't know if it's worth it to get things set up before then, with Cori's imminent retirement. |
Looks like setting up a GitLab instance at NERSC is also currently potentially a little easier than at PNNL since they have custom executors that are integrated directly into SLURM. We end up having to write bash script to achieve the same thing at PNNL, although the workaround is robust at this point |
Even though Cori is retiring soon, I would hope that there wouldn't be significant downtime between the transition, and that we can easily move the location of where we test. It might even be as easy as changing the slurm partition in the yaml script if we have a robust enough configuration. |
Thanks to #64, we now have continuous integration with CPUs and GPUs. Nice work, @cameronrutherford ! |
It would be great to have basic testing of mam4xx in GitHub actions CI on an ubutnu image, along with testing in a mirrored GitLab instance at PNNL for GPU based testing.
https://github.com/LLNL/hiop/blob/develop/.github/workflows/test.yml - this is an example of building with CMake in CI, although this might not be the easiest to implement since we require haero to build at the moment. Perhaps would be doable with some steps to also configure and build haero with OpenMP as a backend.
https://github.com/LLNL/hiop/blob/develop/.github/workflows/push_mirror.yml - if a mirror is set up at PNNL, we would have a GitHub action that triggers the pipeline at PNNL, and then queries the pipeline while it is running for the result. This integration works automatically with some tiers of GitLab, and some documentation is also outlined here https://ecp-ci.gitlab.io/docs/guides/build-status-gitlab.html
This will probably have to wait until haero and other submodules are made open source and are publically available, as it would probably otherwise be a nightmare to manage.
cc @jeff-cohere @pressel @singhbalwinder
The text was updated successfully, but these errors were encountered: