-
-
Notifications
You must be signed in to change notification settings - Fork 195
Add arm64 to GHA CI and split tests across more runners #3158
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
Conversation
Jenkins Console Log Machine informationNo LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 20.04.3 LTS Release: 20.04 Codename: focalCPU: G++: Clang: |
I've also split the tests across more runners, bringing the total runtime down to ~1.5hours. Given that the Jenkins mix unit tests take ~4 hours, maybe we could look at using the github runners for the basic unit tests instead (leaving the GPU, mpi, etc for Jenkins)? That could speed the CI process up a bit and also free up the resources for the CI in the other repos |
We could also split up the Jenkins jobs into more parallel executors. Especially if they end up being short-lived, I don't think that would be a problem -- but I'd look into it in a separate PR rather than at the same time as this |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Two minor comments but this looks good -- thanks!
Jenkins Console Log Machine informationNo LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 20.04.3 LTS Release: 20.04 Codename: focalCPU: G++: Clang: |
Jenkins Console Log Machine informationNo LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 20.04.3 LTS Release: 20.04 Codename: focalCPU: G++: Clang: |
Hey @andrjohns, I've noticed some extra flakiness in the windows tests after this -- e.g, These passed during the CI of #3151, which was using the old action at the time. Any idea what's up? |
Update: Run #4 did pass. Definitely worth looking into more next week |
Summary
Now that arm64 runners are available in github actions, we can add them as part of our regular CI. This will help catch issues like those fixed in #3059 - it's already identified issues with
owens_t
!The
owens_t
function was hanging indefinitely under the arm64 runner, and this was resolved by adding ourboost_policy
definition as an argument - I'm not entirely sure why (might be another precision thing?).I've added the runners as part of the existing Windows Rtools CI, using
pwsh
to avoid changing the current workflow in any meaningful way.Tests
N/A - existing tests should still pass
Side Effects
N/A
Release notes
Add arm64 linux to Github Actions CI
Checklist
Copyright holder: Andrew Johnson
The copyright holder is typically you or your assignee, such as a university or company. By submitting this pull request, the copyright holder is agreeing to the license the submitted work under the following licenses:
- Code: BSD 3-clause (https://opensource.org/licenses/BSD-3-Clause)
- Documentation: CC-BY 4.0 (https://creativecommons.org/licenses/by/4.0/)
the basic tests are passing
./runTests.py test/unit
)make test-headers
)make test-math-dependencies
)make doxygen
)make cpplint
)the code is written in idiomatic C++ and changes are documented in the doxygen
the new changes are tested