[PATCH] D27152: Merge strings using sharded hash tables.
Rui Ueyama via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Dec 5 23:21:50 PST 2016
ruiu updated this revision to Diff 80381.
ruiu added a comment.
I was about to commit https://reviews.llvm.org/D27155, but it turned out that the single-core
performance of that change is too poor to check-in. So I want to submit
this patch instead.
This doesn't scale that much compared to https://reviews.llvm.org/D27155, but its single-core
performance doesn't such as well. Here is clang link time in seconds.
As you can see, it's performance is competitive if you have at least
two cores. However, it doesn't scale more than 8 cores. (I guess the
small improvements over 8 cores comes from other parts of the linker.)
1. of cores Before After 1 13.462 15.795 +17.33% 2 9.766 10.046 +2.86% 4 7.697 7.228 -6.09% 8 6.888 5.672 -17.65% 12 7.073 5.848 -17.31% 16 7.066 5.746 -18.68% 20 6.846 5.482 -19.92%
Linking clang-scale programs only with single core is very painful
anyways, so I think this performance characteristics is okay.
https://reviews.llvm.org/D27152
Files:
ELF/InputSection.h
ELF/OutputSections.cpp
ELF/OutputSections.h
test/ELF/comment-gc.s
test/ELF/compressed-debug-input.s
test/ELF/debug-gc.s
test/ELF/gc-sections-merge.s
test/ELF/merge-string-align.s
test/ELF/merge.s
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D27152.80381.patch
Type: text/x-patch
Size: 14581 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20161206/711fc35c/attachment.bin>
More information about the llvm-commits
mailing list