-
Notifications
You must be signed in to change notification settings - Fork 156
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] Tidy up and test with ubuntu 22.04 #1004
Conversation
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.
Thanks Nuno! It seems that it fails on more configurations than what you are excluding, is that correct? The Rocm __oclc_abi_version
linker failure is a known issue that happens due to a bug either in ROCm or clang with certain ROCm and clang versions. One known fix is to compile using -Xclang -mlink-bitcode-file -Xclang /path/to/rocm/amdgcn/bitcode/oclc_abi_version_400.bc
, i.e. manually the link the required bitcode file.
Nope, the exclusions do cover all failing configurations. :-)
I see, I'll have a look, that's happening with clang 13 and 14, and ROCm 5.3. |
9faccc7
to
12f9704
Compare
I was able to confirm that adding that line to the compiler flags does fix it. |
My guess is that I'm not sure if there's a convenient way to circumvent the issue in CI. Would it make sense to revert to the latest ROCm version where this is not an issue? |
I've tried ROCm 5.2.5 and unfortunately apt reports unsatisfiable dependencies on 22.04. I understand ideally we'd drop 20.04 altogether, but seeing we can't easily do that, would you be happy with:
This would keep the same number of jobs we're already using at the expense of also dropping the following, even though they are working:
|
Yeah we should probably keep 20.04 for some more time. I suppose there is not much that we can do otherwise apart from what you suggest :( |
So, to recap and for the avoidance of doubt, we are excluding, since they are not working, the following 14 configs:
In addition, I've added a new commit which excludes the following four, working configs:
We are thus left with six, one for each clang version, of the total 24 possible job configs. Let me know if you'd like to avoid the same kind of redundancy in the CBS tests as well, or if you'd rather keep all the working tests, including the working ones I excluded above, just so we exhaust the space as best as we can. |
That looks okay to me.
Maybe @fodinabor would like to comment on this? |
IMO, a single Ubuntu version with the CBS tests should be fine since they are mostly concerned with testing the different |
I agree. Done. |
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.
LGTM, thanks!
Hi @illuhad,
This was a bit harder than I imagined but I think it's looking good.
The last commit is there for you to see why specific configurations are being excluded from the job matrix.
Ideally I'd keep to a single ROCm version, but testing two different versions has its merits too I suppose.
Cheers,
-Nuno