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 the LLD linker for all but SGX libraries for 5x faster link times #530

Merged
merged 1 commit into from
Oct 29, 2021

Conversation

eigenraven
Copy link
Collaborator

From a short test on my PC:

(faasm) root@341d8f1cc516:/usr/local/code/faasm# rm /build/faasm/bin/* ; sync ; time inv dev.cc all
ld (default):

real    0m5.037s
user    0m33.545s
sys     0m11.528s

lld:

real    0m1.183s
user    0m7.354s
sys     0m5.349s

When iterating on changes, linker usually took most of the build time on my machine, this helps the link times massively. The PR enables lld on executables via the CMake configuration, and on faasm shared libraries, but not manually created libraries as flags used for building the SGX trusted enclave library were not compatible - this way that specific library is still compiled with the default ld.bfd linker.

@Shillaker
Copy link
Collaborator

🙏 amazing. Could we do this in Faabric too?

@Shillaker Shillaker assigned Shillaker and unassigned Shillaker Oct 29, 2021
@Shillaker Shillaker merged commit 49cc433 into master Oct 29, 2021
@Shillaker Shillaker deleted the use-lld branch October 29, 2021 11:02
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.

None yet

2 participants