Conversation
Contributor
Author
|
cscs-ci run beverin |
Contributor
Author
|
cscs-ci run default |
Contributor
Author
|
@kostrzewa @mtaillefumier I'm merging this, since all pipelines (finally!) run properly. |
Member
|
@chaoos thanks a lot for this! I'm a bit surprised about the lax precision that you had to settle for in the checks after setting such strict solver precisions but I guess it is what it is. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR adds requirements on the side of tmLQCD for CI/CD testing on the CSCS test system "beverin". This system hosts AMD MI300A GPUs. This is the clean version of #669, without the merge mess (I'm sorry!).
The pipeline was changed as follows:
Additonally, one can comment on any PR with
To run the pipeline on MI300 nodes at CSCS. The test is equivalent to the GH200 pipeline test.
Both pipelines (GH200 and MI300) where changed to have 3 stages now:
prepare: builds the base image with all dependencies in itbuild: build tmLQCD for the PR, and QUDA from its newest head commit (this ALWAYS rebuilds QUDA and tmQLCD for every invocation of the pipeline bypassing all build caches).test: run the HMC test as beforeFurthermore both comments can be supplemented by variables which propagate to the pipeline jobs. For instance:
Available variables to set are:
QUDA_GIT_REPO: the git repository URL to use as source for the QUDA spack build in thebuildstage (defaults tohttps://github.com/lattice/quda.git)QUDA_GIT_BRANCH: the git branch (defaults todevelop)QUDA_GIT_COMMIT: the git commit (defaults to the current head commit ofQUDA_GIT_BRANCH)This functionality is there to be able to test the whole pipeline against a certain QUDA branch that is active in development (possibly on a fork). For instance:
will pull the most recent commit of the
feature/prefetch2branch of QUDA instead and compile and run against that one, orwill checkout a certain commit hash instead of the most recent one.
This works on the GH200 as well as on the MI300 pipeline, but not the github actions pipelines.
TODO:
environment.yaml.quda@developwork in the spack spec even throughdevelopis an evolving target.feature/cicd-mi300mastercmakebuildecho "VARIABLE = $VARIABLE"and other noise in all yaml files