-
-
Notifications
You must be signed in to change notification settings - Fork 14.4k
Export LLVM symbols for autodiff on Apple #151243
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
base: main
Are you sure you want to change the base?
Conversation
|
This seems like it has the same goal as #150992 except implemented in a hackier way. |
|
Thanks for informing! |
|
After #150992 has been merged, I'll modify this PR or create a new PR to export LLVM symobls for autodiff on Apple target I leave this PR as a draft for now |
|
Also @Kobzol , just for awareness. |
|
Is there any other potential perf. impact other than making the toolchain larger? |
|
I don't expect it to have any relevant runtime perf impact, but given the surface of LLVM and the complexity of our bootstrap (e.g. PGO) I also wouldn't be too surprised if there's a corner case where this affects a benchmark. On Linux I would have started a perf run, but since we don't have those for apple I'd just merge it when ready. I mainly wanted to make sure that you're aware and ok with this change. |
|
Ok. Go ahead :) |
Export LLVM symbols from
rustc_driveron Apple when autodiff is enabled.On Apple targets, Enzyme can hang if rustc and Enzyme each embed their own LLVM. Exporting LLVM symbols from
rustc_driverlets Enzyme reusedependencies: rust-lang/enzyme#31
This PR can be merged after rust-lang/enzyme#31 has been merged and enzyme submodule has been updated.
I applied diffs on this PR to #151063 then produced artifacts at https://github.com/rust-lang/rust/actions/runs/21091289355
I confirmed that
/path/to/rustc -Zautodiff=Enable -Clto=fat test.rssuccessfully finished when I used those artifacts↑r? @ZuseZ4