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

Use clang-12 to fix issue with LLVM_ABI_BREAKING_CHECKS #16

Merged
merged 3 commits into from
Sep 19, 2024

Conversation

karupayun
Copy link
Member

This commit is fixing the root cause of the issue that appeared during an llvm update, and was raised in triton-lang#4212 (comment).

The issue was temporary fixed in triton-lang#4512, where we set LLVM_ABI_BREAKING_CHECKS to FORCE_OFF constant in order to not use a non-deterministic seed inside the hashing function (included in this llvm commit: llvm/llvm-project@ce80c80).

A further investigation (with chsigg@) found that the issue is that LLVM is built with clang11, while Triton use a newer version. The ABI issue is brought up here: llvm/llvm-project#96282 (comment), but the consensus seemed to be that this setup is rare.

Updated the clang version to 12 in the ubuntu build fixed the issue and therefore we can revert setting LLVM_ABI_BREAKING_CHECKS constant. I am additionaly erasing LLVM_ABI_BREAKING_CHECKS in the setup of the other hardwares (it seems it was not needed) and I am splitting ubuntu and macOS configurations because it seems cleaner than having a variable that sets the compiler version for each of them.

This commit is fixing the root cause of the issue that appeared during
an llvm update, and was raised in triton-lang#4212 (comment).

The issue was temporary fixed in triton-lang#4512,
where we set LLVM_ABI_BREAKING_CHECKS to FORCE_OFF constant in order to
not use a non-deterministic seed inside the hashing function
(included in this llvm commit: llvm/llvm-project@ce80c80).

A further investigation (with chsigg@) found that the issue is that LLVM
is built with clang11, while Triton use a newer version. The ABI issue
is brought up here: llvm/llvm-project#96282 (comment),
but the consensus seemed to be that this setup is rare.

Updated the clang version to 12 in the ubuntu build fixed the issue and
therefore we can revert setting LLVM_ABI_BREAKING_CHECKS constant. I am
additionaly erasing LLVM_ABI_BREAKING_CHECKS in the setup of the other
hardwares (it seems it was not needed) and I am splitting ubuntu and
macOS configurations because it seems cleaner than having a variable
that sets the compiler version for each of them.
@karupayun karupayun requested a review from chsigg September 19, 2024 10:01
@chsigg chsigg merged commit ec4b121 into llvm-head-staging Sep 19, 2024
1 check passed
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.

2 participants