<div dir="ltr">In building the OS X bindist for 7.8.3, I had to choose which of several ways to build it. In particular, I could build it with a newere Xcode, which uses clang, or an older Xcode which uses gcc. I decided to nofib benchmark the variations and see before I released. Here is what I found...<div>

<br></div><div>I compared two candidate builds:</div><div><ul><li>x86_64 architecture</li><li>targeted at OS X 10.7 and later<br></li><li>one built with Xcode 5.1 on 10.9, which uses clang</li><li>one built with Xcode 4.5 on 10.8, which uses gcc</li>

</ul><div>I installed both bindists, side-by-side on the same machine: a 10.9 machine, with Xcode 5.1, which uses clang. The machine is a MacMini, 2.5GHz Intel Core i5 (dual core, reports as 4 cpus).</div></div><div><br>
</div>
<div>Summary:</div><div><ul><li>clang build was always faster</li><ul><li>non-threaded was -3.2% run-time</li><li>threaded was -7.3% run-time</li></ul><li>clang's improvement in GC run-time was better than -10%</li><li>

clang builds were significantly bigger</li></ul><div>You can find the details here:</div><ul><li><a href="http://www.ozonehouse.com/mark/platform/analysis-Silver-10.9-gcc-vs-clang.html">analysis-Silver-10.9-gcc-vs-clang.html</a><br>

</li><li><a href="http://www.ozonehouse.com/mark/platform/analysis-Silver-10.9-gcc-vs-clang-threaded.html">analysis-Silver-10.9-gcc-vs-clang-threaded.html</a></li></ul><div>The only concern is that the binary sizes were significantly bigger: +230% - I haven't investigated more, but I'm wondering if nofib doesn't strip the binaries before measuring, and perhaps clang's debugging info is much greater?</div>

</div><div><br></div><div>Next up... we are evaluating a bindist built with the HPC Mac OS X gcc compiler (based on gcc 4.9)... and preliminary results are looking even better! Stay tuned...</div><div><br></div><div>- Mark</div>

<div><br></div></div>