<div dir="ltr">On 1 July 2013 19:13, Jakob Stoklund Olesen <span dir="ltr"><<a href="mailto:stoklund@2pi.dk" target="_blank">stoklund@2pi.dk</a>></span> wrote:<br><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="im"><span style="color:rgb(34,34,34)">"We find that the performance impact of -O3 over -O2 optimizations is indistinguishable from random noise.”</span></div></blockquote><div></div></div><br></div><div class="gmail_extra">
Yes, we circulated that paper a few weeks ago on the list.</div><div class="gmail_extra"><br></div><div class="gmail_extra">This reminds me of an interesting project I saw that runs a genetic algorithm on the LLVM optimization passes using opt and you can get some interesting results from them, that would help you distinguish O2 from O3, but on a test-by-test basis. There's no way yet to know beforehand what is the best combination of passes for each specific input.</div>
<div class="gmail_extra"><br></div><div class="gmail_extra">That is, if I'm not mistaken, one of the reasons to enable the loop vectorizer on -O2 as -Os by default, as well as -O3, on LLVM.</div><div class="gmail_extra">
<br></div><div class="gmail_extra">cheers,</div><div class="gmail_extra">--renato</div></div>