[PATCH] D105506: [LLD] [COFF] Avoid thread exhaustion on 32-bit Windows host
Martin Storsjö via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Jul 6 13:00:02 PDT 2021
mstorsjo added a comment.
In D105506#2860589 <https://reviews.llvm.org/D105506#2860589>, @jeremyd2019 wrote:
> In D105506#2860576 <https://reviews.llvm.org/D105506#2860576>, @mstorsjo wrote:
>
>> Not a testcase for whether this crashes or not, but to see how much the suggested fix regresses linking performance for such projects that do succeed even before this patch.
>
> Hmm, I guess I could build qt6-base with the non-patched lld, let it fail, then manually run and time the link (which should succeed in isolation because it only tends to crash with parallel builds), and manually run and time the link with the patched lld.
Thanks, that'd be awesome. Yeah a project on that scale hopefully is big enough where the difference is noticable.
FWIW, see https://github.com/llvm/llvm-project/commit/6ee0b4e9f543fa108b47d3ae7c030d835cacd2c1 for the original commit that added this feature, giving the scale of the speedup that it gave. So it might make the linking time around 30-100% longer than before, roughly, on large projects. Given how fast lld is otherwise I think that might be tolerable (and lld on 32 bit can't link huge projects anyway due to using memory mapping).
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D105506/new/
https://reviews.llvm.org/D105506
More information about the llvm-commits
mailing list