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

Make ASAN build not be debug, following clangs recommendation #54094

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

gbaraldi
Copy link
Member

@gbaraldi gbaraldi commented Apr 15, 2024

Following LLVMs/Googles recommendation, ASAN should be run with optimization otherwise performance is awful (which it is for us). The asan build is currently by far the longest and it's just a build. I would like for us to one day run ASAN and TSAN tests and maybe even MSAN, but ASAN is the cheapest and less hassly to do it, because it has false negatives instead of false positives like the other sanitizers.

TODO: Make the setting respect if the user asked for a debug build or not.

@gbaraldi gbaraldi requested a review from Keno April 15, 2024 20:33
@gbaraldi
Copy link
Member Author

This needs JuliaCI/julia-buildkite#349 to actually have effect

@giordano giordano added the domain:building Build system, or building Julia or its dependencies label Apr 15, 2024
@gbaraldi
Copy link
Member Author

So bootstrapping with O1 is quite a bit faster 🤔

@giordano
Copy link
Contributor

But building the pkgimages of the stdlibs is still quite slow, no?

@gbaraldi
Copy link
Member Author

gbaraldi commented Apr 22, 2024

Yes, it might be worth it to understand why ASAN is so expensive for us, I believe the expected overhead is 2x and we are seeing almost 4 and for pkgimages it's almost 20x but this still halves the time by half

@giordano
Copy link
Contributor

Can this this merged since it does sensibly improve ASAN build time, and further improvement can be done in follow up PR?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
domain:building Build system, or building Julia or its dependencies
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants