<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><br class=""><div><blockquote type="cite" class=""><div class="">On Mar 13, 2015, at 12:38 PM, Eric Christopher <<a href="mailto:echristo@gmail.com" class="">echristo@gmail.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div dir="ltr" class=""><br class=""><br class=""><div class="gmail_quote">On Fri, Mar 13, 2015 at 12:14 PM Rafael EspĂndola <<a href="mailto:rafael.espindola@gmail.com" class="">rafael.espindola@gmail.com</a>> wrote:<br class=""><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">> I will do a run with --merge-strings. This should probably the the<br class="">
> default to match other ELF linkers.<br class="">
<br class="">
Trying --merge-strings with today's trunk I got<br class="">
<br class="">
* comment got 77 797 bytes smaller.<br class="">
* rodata got 9 394 257 bytes smaller.<br class="">
<br class="">
Comparing with gold, comment now has the same size and rodata is 55<br class="">
021 bytes bigger.<br class="">
<br class="">
Amusingly, merging strings seems to make lld a bit faster. With<br class=""></blockquote><div class=""><br class=""></div><div class="">As a side note this is a really good thing. The idea is that the linker should largely be I/O bound and not processor bound.</div></div></div></div></blockquote><div><br class=""></div><div>+1</div><div><br class=""></div><div>This is very cool, everyone. Thank you for your work here.</div><br class=""><blockquote type="cite" class=""><div class=""><div dir="ltr" class=""><div class="gmail_quote"><div class=""><br class=""></div><div class="">-eric</div><div class=""> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
today's files I got:<br class="">
<br class="">
lld:<br class="">
------------------------------<u class=""></u>------------------------------<u class=""></u>---------------<br class="">
<br class="">
1985.256427 task-clock (msec) # 0.999 CPUs<br class="">
utilized ( +- 0.07% )<br class="">
1,152 context-switches # 0.580 K/sec<br class="">
0 cpu-migrations # 0.000 K/sec<br class="">
( +-100.00% )<br class="">
199,309 page-faults # 0.100 M/sec<br class="">
5,970,383,833 cycles # 3.007 GHz<br class="">
( +- 0.07% )<br class="">
3,413,740,580 stalled-cycles-frontend # 57.18% frontend<br class="">
cycles idle ( +- 0.12% )<br class="">
<not supported> stalled-cycles-backend<br class="">
6,240,156,987 instructions # 1.05 insns per<br class="">
cycle<br class="">
# 0.55 stalled<br class="">
cycles per insn ( +- 0.01% )<br class="">
1,293,186,347 branches # 651.395 M/sec<br class="">
( +- 0.01% )<br class="">
26,687,288 branch-misses # 2.06% of all<br class="">
branches ( +- 0.00% )<br class="">
<br class="">
1.987125976 seconds time elapsed<br class="">
( +- 0.07% )<br class="">
------------------------------<u class=""></u>------------------------------<u class=""></u>-----------------------<br class="">
ldd --merge-strings:<br class="">
<br class="">
------------------------------<u class=""></u>------------------------------<u class=""></u>------------------<br class="">
1912.735291 task-clock (msec) # 0.999 CPUs<br class="">
utilized ( +- 0.10% )<br class="">
1,152 context-switches # 0.602 K/sec<br class="">
0 cpu-migrations # 0.000 K/sec<br class="">
( +-100.00% )<br class="">
187,916 page-faults # 0.098 M/sec<br class="">
( +- 0.00% )<br class="">
5,749,920,058 cycles # 3.006 GHz<br class="">
( +- 0.04% )<br class="">
3,250,485,516 stalled-cycles-frontend # 56.53% frontend<br class="">
cycles idle ( +- 0.07% )<br class="">
<not supported> stalled-cycles-backend<br class="">
5,987,870,976 instructions # 1.04 insns per<br class="">
cycle<br class="">
# 0.54 stalled<br class="">
cycles per insn ( +- 0.00% )<br class="">
1,250,773,036 branches # 653.919 M/sec<br class="">
( +- 0.00% )<br class="">
27,922,489 branch-misses # 2.23% of all<br class="">
branches ( +- 0.00% )<br class="">
<br class="">
1.914565005 seconds time elapsed<br class="">
( +- 0.10% )<br class="">
------------------------------<u class=""></u>------------------------------<u class=""></u>----------------<br class="">
<br class="">
<br class="">
gold<br class="">
<br class="">
------------------------------<u class=""></u>------------------------------<u class=""></u>-------------------<br class="">
1000.132594 task-clock (msec) # 0.999 CPUs<br class="">
utilized ( +- 0.01% )<br class="">
0 context-switches # 0.000 K/sec<br class="">
0 cpu-migrations # 0.000 K/sec<br class="">
77,836 page-faults # 0.078 M/sec<br class="">
3,002,431,314 cycles # 3.002 GHz<br class="">
( +- 0.01% )<br class="">
1,404,393,569 stalled-cycles-frontend # 46.78% frontend<br class="">
cycles idle ( +- 0.02% )<br class="">
<not supported> stalled-cycles-backend<br class="">
4,110,576,101 instructions # 1.37 insns per<br class="">
cycle<br class="">
# 0.34 stalled<br class="">
cycles per insn ( +- 0.00% )<br class="">
869,160,761 branches # 869.046 M/sec<br class="">
( +- 0.00% )<br class="">
15,691,670 branch-misses # 1.81% of all<br class="">
branches ( +- 0.00% )<br class="">
<br class="">
1.001044905 seconds time elapsed<br class="">
( +- 0.01% )<br class="">
------------------------------<u class=""></u>------------------------------<u class=""></u>-------------------<br class="">
<br class="">
I have attached the run.sh script I used to collect the numbers.<br class="">
<br class="">
Cheers,<br class="">
Rafael<br class="">
______________________________<u class=""></u>_________________<br class="">
LLVM Developers mailing list<br class="">
<a href="mailto:LLVMdev@cs.uiuc.edu" target="_blank" class="">LLVMdev@cs.uiuc.edu</a> <a href="http://llvm.cs.uiuc.edu/" target="_blank" class="">http://llvm.cs.uiuc.edu</a><br class="">
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev" target="_blank" class="">http://lists.cs.uiuc.edu/<u class=""></u>mailman/listinfo/llvmdev</a><br class="">
</blockquote></div></div>
_______________________________________________<br class="">LLVM Developers mailing list<br class=""><a href="mailto:LLVMdev@cs.uiuc.edu" class="">LLVMdev@cs.uiuc.edu</a> <a href="http://llvm.cs.uiuc.edu" class="">http://llvm.cs.uiuc.edu</a><br class=""><a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev" class="">http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev</a><br class=""></div></blockquote></div><br class=""></body></html>