[PATCH] D108850: [LLD] Remove global state in lldCommon
Fangrui Song via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Dec 28 14:57:04 PST 2021
MaskRay accepted this revision as: MaskRay.
MaskRay added a comment.
This revision is now accepted and ready to land.
I tried linking chrome and clang release/relwithdebinfo with this patch. No significant difference. Here is chrome's --threads=8 output
% hyperfine --warmup 2 --min-runs 20 "numactl -C 20-27 "{/tmp/c/0,/tmp/c/1}" -flavor gnu @response.txt --threads=8 -o lld.8"
Benchmark 1: numactl -C 20-27 /tmp/c/0 -flavor gnu @response.txt --threads=8 -o lld.8
Time (mean ± σ): 6.699 s ± 0.032 s [User: 8.815 s, System: 2.439 s]
Range (min … max): 6.637 s … 6.745 s 20 runs
Benchmark 2: numactl -C 20-27 /tmp/c/1 -flavor gnu @response.txt --threads=8 -o lld.8
Time (mean ± σ): 6.691 s ± 0.027 s [User: 8.856 s, System: 2.396 s]
Range (min … max): 6.647 s … 6.743 s 20 runs
Summary
'numactl -C 20-27 /tmp/c/1 -flavor gnu @response.txt --threads=8 -o lld.8' ran
1.00 ± 0.01 times faster than 'numactl -C 20-27 /tmp/c/0 -flavor gnu @response.txt --threads=8 -o lld.8'
Checked a large internal program, no difference.
Hope that https://maskray.me/blog/2021-12-19-why-isnt-ld.lld-faster#parallel-initialization-of-sections and parallel initialization of symbol tables are not harder to refactor :)
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D108850/new/
https://reviews.llvm.org/D108850
More information about the llvm-commits
mailing list