Skip to content
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] Uplift DPC++ compiler version #1012

Merged
merged 8 commits into from
Dec 21, 2024
Merged

[CI] Uplift DPC++ compiler version #1012

merged 8 commits into from
Dec 21, 2024

Conversation

bader
Copy link
Contributor

@bader bader commented Dec 19, 2024

No description provided.

@bader bader requested a review from a team as a code owner December 19, 2024 21:36
@bader
Copy link
Contributor Author

bader commented Dec 19, 2024

@illuhad, I'm trying to uplift AdaptiveCpp version in Khronos SYCL-CTS CI, but installation fails due to missing dependency on LLVM. What would you recommend to fix this issue?
I see that AdaptiveCpp build system supports multiple profiles. If I get it right some of these profiles remove the requirement to install LLVM libraries. Should we configure the build to use of these profiles or install LLVM?

@illuhad
Copy link
Contributor

illuhad commented Dec 19, 2024

@bader The AdaptiveCpp main compiler is the generic JIT compiler (--acpp-targets=generic). Since this is our main compiler, it would be good at least long term to have it in CTS CI. That will indeed require LLVM, but installing the necessary packages from apt.llvm.org should be sufficient. This is what we do in our CI: https://github.com/AdaptiveCpp/AdaptiveCpp/blob/ba3fb96fbeb4a00929f4f93b57f0831e44ed903a/.github/workflows/linux.yml#L52

Now I don't know what is possible in the CTS CI image, or if there are any challenges around this. Perhaps @psalz knows more?

Otherwise it is indeed possible to install a library-only configuration using -DACPP_COMPILER_FEATURE_PROFILE=none, however, this is not the configuration that we recommend to end users, or the configuration that we would work on for eventual spec conformance.

docker/dpcpp/Dockerfile Show resolved Hide resolved
Comment on lines 15 to 20
RUN wget https://apt.llvm.org/llvm.sh && \
chmod +x llvm.sh && \
./llvm.sh 18 && \
apt update && \
apt install -y --no-install-recommends \
libclang-18-dev clang-tools-18 libomp-18-dev
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

After the switch to 24.04 as the base image in #874 we can just install LLVM 18 though apt.

@psalz
Copy link
Contributor

psalz commented Dec 20, 2024

#874 already updates the ACpp image to a revision from last week; why do we need another PR for this?

@bader
Copy link
Contributor Author

bader commented Dec 20, 2024

#874 already updates the ACpp image to a revision from last week; why do we need another PR for this?

First, I forgot that #874 apart from renaming uplifts the compiler version.
Second, the goal of my PR is to use the compilers, which are passing #989.

I agree that merging #874 should be enough to pass #989 with ACpp. I'll leave only DPC++ related changes.

@bader bader changed the title [CI] Uplift compiler versions [CI] Uplift DPC++ compiler version Dec 20, 2024
@bader bader requested a review from psalz December 20, 2024 19:55
@bader bader merged commit f1e6fd0 into main Dec 21, 2024
9 checks passed
@bader bader deleted the compilers-uplift branch December 21, 2024 01:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants