<div dir="auto"><div><div class="gmail_quote"><blockquote class="quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div><div><div><div><div><div><div><div><div><div><div><div>I was doing some micro benchmarking for a code path that w/ profiling was showing to take up a large portion of execution time. I narrowed down the code to querying the configuration database extracted the attached testcase. While seeing what was the optimal pattern performance wise, I noticed that clang was dramatically slower than gcc<br><br></div>While -flto does help, the perf delta is still 2x.<br><br></div>Attached is test case and run script.<br><br></div>CPU: Intel(R) Core(TM) i5-6600K CPU @ 3.50GHz<br></div>gcc: g++ (Ubuntu 6.3.0-12ubuntu2) 6.3.0 20170406<br></div>clang4.0: clang version 4.0.0-1ubuntu1 (tags/RELEASE_400/rc1)</div><div>clang5.0: clang version 5.0.0 (tags/RELEASE_500/final)<br><br></div>Results:<br></div>O3 g++: .334s & .542s<br></div>O3 clang++4.0: 1.866s & 1.866s<br><br></div>O3 LTO g++: .341s & .343s<br></div>O3 LTO clang++4.0: .554s & .797s<br><br></div>I also downloaded llvm 5.0 really quick and got this:</div><div>O3 clang++5.0: 1.583s && 1.679s</div><div><br></div><div>There was no LLVMGold.so w/ the 5.0 downloads, so I didn't get any numbers there.<br></div><div><br></div>Hope this helps,<br></div>Micah<br><div><div><div><div><div><div><div><div><div><div><br></div></div></div></div></div></div></div></div></div></div></div>
</blockquote></div><br></div></div>