-
Notifications
You must be signed in to change notification settings - Fork 46
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
Update Github CI workflows for CPU builds and tests #380
Update Github CI workflows for CPU builds and tests #380
Conversation
41b02df
to
fa85ae9
Compare
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.
The cmake builds fail. The logs show
Run actions/upload-artifact@v4
With the provided path, there will be 169 files uploaded
Artifact name is valid!
Root directory input is valid!
Error: Failed to CreateArtifact: Received non-retryable error: Failed request: (409) Conflict: an artifact with this name already exists on the workflow run
From https://github.com/actions/upload-artifact?tab=readme-ov-file#breaking-changes
Breaking Changes
- Uploading to the same named Artifact multiple times.
Due to how Artifacts are created in this new version, it is no longer possible to upload to the same named Artifact multiple times. You must either split the uploads into multiple Artifacts with different names, or only upload once. Otherwise you will encounter an error.
While we are at it, we should update the build command. Gihub hosted runners now have 4 CPU cores. See We currently use We should update to |
…mes for configure/make and CMake builds/tests. Increase the number of jobs used for building with Make (4 on Github runners). Other refactoring.
…MPI tests and scope to context of the testing step.
@agoetz Regarding bumping up the number of cores used in Github runners from 2 to 4 -- doing this causes the MPI tests to fail consistently on the first test (both configure/make and CMake builds). Moreover, the error code returned from most of these failed tests from quick.MPI appears to be a value of 2 (i.e., the MPI rank first detected to be aborting). Can you check if there is a settting in the merzlab account regarding the Github runner configuration? My best guess is that a change might be required to reflect the hardware upgrades. Other than that issue, this should be ready to merge. |
@ohearnk There are no settings regarding the Github runner configuration. There is an option for Larger Github-hosted runners, but this is restricted to Team & Enterprise accounts. Another option is Self-hosted runners. These are virtual machines for GitHub Actions workflows that you manage and maintain outside of GitHub. We should look into this. I checked for the CPU in the Github runner:
The information on the Github website is misleading. These are actually 4 threads but only 2 physical 4 CPU cores. Let's leave build and MPI runs at 2 cores. |
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.
Looks good. I will merge this PR.
This MR updates the QUICK tests in Github workflows to use v4 artifact actions (v1 and v2 deprecated, then removed -- see here).
Additionally, this MR also updates the checkout action (v4), renames the build artifacts to avoid naming conflicts between the two build systems (legacy configure/make, and CMake)., parallelizes the serial builds, switches to invoking the CMake build/install commands directly (instead of depending on the generated Makefiles), and refactoring the general job and step naming to better reflect the tasks.