This is an archive of the discontinued LLVM Phabricator instance.

[lld-macho] Parallelize scanning the symbol tables in export/unexport-ing.
ClosedPublic

Authored by oontvoo on Nov 12 2021, 5:29 PM.

Details

Summary

(Split from D113167)
Benchmarking on one of our large apps which exports a few thousands symbols,
this showed an improvement of ~17%.

x ./LLD_no_parallel.txt
+ ./LLD_with_parallel.txt

    N           Min           Max        Median           Avg        Stddev
x  10         84.01         89.41         88.64        87.693     1.7424061
+  10          71.9         74.29         72.63        72.753    0.77734663
Difference at 95.0% confidence
	-14.94 +/- 1.26763
	-17.0367% +/- 1.44553%
	(Student's t, pooled s = 1.34912)

(wallclock)

Diff Detail

Event Timeline

oontvoo created this revision.Nov 12 2021, 5:29 PM
Herald added a project: Restricted Project. · View Herald Transcript
Herald added a reviewer: Restricted Project. · View Herald Transcript
oontvoo requested review of this revision.Nov 12 2021, 5:29 PM
Herald added a project: Restricted Project. · View Herald TranscriptNov 12 2021, 5:29 PM
oontvoo edited the summary of this revision. (Show Details)Nov 12 2021, 5:31 PM
int3 accepted this revision.Nov 12 2021, 5:32 PM

Thanks!

This revision is now accepted and ready to land.Nov 12 2021, 5:32 PM
This revision was landed with ongoing or failed builds.Nov 12 2021, 5:57 PM
This revision was automatically updated to reflect the committed changes.