<?xml version="1.0" encoding="utf-16"?><html><head><style><![CDATA[#x113b3e268db643cd94c663cdb904d940 .plain div{
        white-space:pre-wrap;
}
#x113b3e268db643cd94c663cdb904d940{
        font-family:'Segoe UI';
        font-size:12pt;
        color:#000;
        margin-left:0px;
        margin-right:8px;
        background-color:#FFF;
}#xb96ed12184de48f18b9078b0eb7660c6 table{
        mso-displayed-decimal-separator:'.';
        mso-displayed-thousand-separator:',';
}
@page {
        margin:0.75in 0.7in 0.75in 0.7in;
        mso-header-margin:0.3in;
        mso-footer-margin:0.3in;
}
#xb96ed12184de48f18b9078b0eb7660c6 tr{
        mso-height-source:auto;
}
#xb96ed12184de48f18b9078b0eb7660c6 col{
        mso-width-source:auto;
}
#xb96ed12184de48f18b9078b0eb7660c6 br{
        mso-data-placement:same-cell;
}
#xb96ed12184de48f18b9078b0eb7660c6 td{
        padding-top:1px;
        padding-right:1px;
        padding-left:1px;
        mso-ignore:padding;
        color:black;
        font-size:11pt;
        font-weight:400;
        font-style:normal;
        text-decoration:none;
        font-family:Calibri,sans-serif;
        mso-font-charset:0;
        mso-number-format:General;
        text-align:general;
        vertical-align:bottom;
        border:none;
        mso-background-source:auto;
        mso-pattern:auto;
        mso-protection:locked visible;
        white-space:nowrap;
        mso-rotate:0;
}
#xb96ed12184de48f18b9078b0eb7660c6 .xl65{
        mso-number-format:Fixed;
}
#xb96ed12184de48f18b9078b0eb7660c6 .xl66{
        background:yellow;
        mso-pattern:black none;
}
#xb96ed12184de48f18b9078b0eb7660c6 .xl67{
        mso-number-format:Fixed;
        background:yellow;
        mso-pattern:black none;
}
#xb96ed12184de48f18b9078b0eb7660c6 .xl68{
        color:red;
        background:yellow;
        mso-pattern:black none;
}
#xb96ed12184de48f18b9078b0eb7660c6 .xl69{
        color:red;
        mso-number-format:Fixed;
        background:yellow;
        mso-pattern:black none;
}]]></style>

<style id="css_styles" type="text/css"><![CDATA[blockquote.cite { margin-left: 5px; margin-right: 0px; padding-left: 10px; padding-right:0px; border-left: 1px solid #cccccc }
blockquote.cite2 {margin-left: 5px; margin-right: 0px; padding-left: 10px; padding-right:0px; border-left: 1px solid #cccccc; margin-top: 3px; padding-top: 0px; }
a img { border: 0px; }
ol, ul { list-style-position: inside } 
body { font-family: Segoe UI; font-size: 12pt;   }]]><!--blockquote.cite { margin-left: 5px; margin-right: 0px; padding-left: 10px; padding-right:0px; border-left: 1px solid #cccccc }
blockquote.cite2 {margin-left: 5px; margin-right: 0px; padding-left: 10px; padding-right:0px; border-left: 1px solid #cccccc; margin-top: 3px; padding-top: 0px; }
a img { border: 0px; }
ol, ul { list-style-position: inside } 
body { font-family: Segoe UI; font-size: 12pt;   }--></style></head><body><div><br /></div><div> I'll be interested in seeing the improvements. As a reference, this is what I get in an Intel 6700K when</div><div>I compare gcc 5.4 (Ofast flto) vs published Intel results. 23x in libquantum, and over 40% in many benchmarks.</div><div><br /></div><div> I think that it is mostly <span style="white-space: pre-wrap; background-color: rgb(255, 255, 255);">from AoS vs SoA and loop transformations.</span></div><div><div id="x113b3e268db643cd94c663cdb904d940"><div class="plain">
<div></div></div></div></div><div><br /></div><div><div id="xb96ed12184de48f18b9078b0eb7660c6">

<table border="0" cellpadding="0" cellspacing="0" width="272" style="width: 204pt;" xmlns="http://www.w3.org/TR/REC-html40">

 <colgroup><col width="68" span="4" style="width:51pt" />
 </colgroup><tbody><tr height="19" style="height:14.25pt">
  <td height="19" width="68" style="height:14.25pt;width:51pt"></td>
  <td width="68" style="width:51pt">5.4 Ofast</td>
  <td width="68" style="width:51pt">ICC</td>
  <td width="68" style="width:51pt"></td>
 </tr>
 <tr height="19" style="height:14.25pt">
  <td height="19" style="height:14.25pt">perlbench</td>
  <td class="xl65" align="right">12.98</td>
  <td class="xl65" align="right">12.10</td>
  <td class="xl65" align="right">0.93</td>
 </tr>
 <tr height="19" style="height:14.25pt">
  <td height="19" style="height:14.25pt">bzip2</td>
  <td class="xl65" align="right">7.64</td>
  <td class="xl65" align="right">7.85</td>
  <td class="xl65" align="right">1.03</td>
 </tr>
 <tr height="19" style="height:14.25pt">
  <td height="19" style="height:14.25pt">gcc</td>
  <td class="xl65" align="right">12.30</td>
  <td class="xl65" align="right">11.00</td>
  <td class="xl65" align="right">0.89</td>
 </tr>
 <tr height="19" style="height:14.25pt">
  <td height="19" class="xl66" style="height:14.25pt">mcf</td>
  <td class="xl67" align="right">14.08</td>
  <td class="xl67" align="right">21.78</td>
  <td class="xl65" align="right">1.55</td>
 </tr>
 <tr height="19" style="height:14.25pt">
  <td height="19" style="height:14.25pt">gobmk</td>
  <td class="xl65" align="right">8.30</td>
  <td class="xl65" align="right">8.98</td>
  <td class="xl65" align="right">1.08</td>
 </tr>
 <tr height="19" style="height:14.25pt">
  <td height="19" class="xl66" style="height:14.25pt">hmmer</td>
  <td class="xl67" align="right">9.07</td>
  <td class="xl67" align="right">27.00</td>
  <td class="xl65" align="right">2.98</td>
 </tr>
 <tr height="19" style="height:14.25pt">
  <td height="19" style="height:14.25pt">sjeng</td>
  <td class="xl65" align="right">8.94</td>
  <td class="xl65" align="right">9.73</td>
  <td class="xl65" align="right">1.09</td>
 </tr>
 <tr height="19" style="height:14.25pt">
  <td height="19" class="xl68" style="height:14.25pt">libquantum</td>
  <td class="xl69" align="right">23.10</td>
  <td class="xl69" align="right">535.00</td>
  <td class="xl65" align="right">23.16</td>
 </tr>
 <tr height="19" style="height:14.25pt">
  <td height="19" class="xl66" style="height:14.25pt">h264ref</td>
  <td class="xl67" align="right">15.77</td>
  <td class="xl67" align="right">22.30</td>
  <td class="xl65" align="right">1.41</td>
 </tr>
 <tr height="19" style="height:14.25pt">
  <td height="19" class="xl66" style="height:14.25pt">omnetpp</td>
  <td class="xl67" align="right">6.62</td>
  <td class="xl67" align="right">8.55</td>
  <td class="xl65" align="right">1.29</td>
 </tr>
 <tr height="19" style="height:14.25pt">
  <td height="19" class="xl66" style="height:14.25pt">astar</td>
  <td class="xl67" align="right">7.09</td>
  <td class="xl67" align="right">10.20</td>
  <td class="xl65" align="right">1.44</td>
 </tr>
 <tr height="19" style="height:14.25pt">
  <td height="19" class="xl66" style="height:14.25pt">xalan</td>
  <td class="xl67" align="right">13.63</td>
  <td class="xl67" align="right">18.50</td>
  <td class="xl65" align="right">1.36</td>
 </tr>
 <tr height="19" style="height:14.25pt">
  <td height="19" style="height:14.25pt">SCORE</td>
  <td class="xl65" align="right">10.86</td>
  <td class="xl65" align="right">17.83</td>
  <td><br /></td></tr></tbody></table></div></div>
<div><br /></div><div id="signature_old"><div id="xf01ef08e5e3d489"><div><div>---</div>Jose Renau<div>UNCORE LLC</div></div></div></div><div><br /></div>
<div>On 8/15/2017 10:07:40 PM, "Tobias Grosser" <<a href="mailto:tobias.grosser@inf.ethz.ch">tobias.grosser@inf.ethz.ch</a>> wrote:</div><div><br /></div>
<div id="x08954c4b53f1457"><blockquote type="cite" class="cite2">

<div>Sorry, I meant libquantum/cpu2006.</div>
<div> </div>
<div>Best,</div>
<div>Tobias</div>
<div> </div>
<div>On Wed, Aug 16, 2017, at 07:06, Das, Dibyendu via llvm-dev wrote:</div>
<blockquote type="cite" class="cite">
<div> Hi Tobias-</div>
<div> </div>
<div> The loop fusion you mention is the one in libquantum/cpu2006 ? Or</div>
<div> something else in cpu2017 ?</div>
<div> </div>
<div> -Thx</div>
<div> Dibyendu</div>
<div> </div>
<div> -----Original Message-----</div>
<div> From: llvm-dev [mailto:<a href="mailto:llvm-dev-bounces@lists.llvm.org">llvm-dev-bounces@lists.llvm.org</a>] On Behalf Of</div>
<div> Tobias Grosser via llvm-dev</div>
<div> Sent: Wednesday, August 16, 2017 10:10 AM</div>
<div> To: <a href="mailto:renau@uncore.io">renau@uncore.io</a>; <a href="mailto:llvm-dev@lists.llvm.org">llvm-dev@lists.llvm.org</a></div>
<div> Subject: Re: [llvm-dev] Heroic LLVM optimizations</div>
<div> </div>
<div> Hi Jose,</div>
<div> </div>
<div> we have work based on Polly which should get the loop-fusion in SPEC2017.</div>
<div> The code is not yet ready to share, but I would be interested to learn if</div>
<div> this would be of use to you.</div>
<div> </div>
<div> Best,</div>
<div> Tobias</div>
<div> </div>
<div> On Wed, Aug 16, 2017, at 00:15, <a href="mailto:renau@uncore.io">renau@uncore.io</a> via llvm-dev wrote:</div>
<div> ></div>
<div> >   I am a professor at UC Santa Cruz, but I also do consulting a Huawei.</div>
<div> > Chris Lattner told me that I should post this in the llvm-dev.</div>
<div> ></div>
<div> >   HiSilicon (Santa Clara office) is looking for some developer capable</div>
<div> > of implementing the "heroic optimizations"</div>
<div> > (<a href="http://llvm.org/devmtg/2015-10/slides/Gerolf-PerformanceImprovementsA">http://llvm.org/devmtg/2015-10/slides/Gerolf-PerformanceImprovementsA</a></div>
<div> > ndHeadroom.pdf) in LLVM. Focus on SPEC2006 but also looking at the new</div>
<div> > SPEC2017.</div>
<div> ></div>
<div> >   The goal is to match, or get closer, to the Intel compiler with</div>
<div> > SPEC2006. ICC has a significant advantage. As the talk shows, there is</div>
<div> > over 10x diff in libquantum, and other benchmarks have also</div>
<div> > significant difference between latest gcc/llvm and ICC.</div>
<div> ></div>
<div> >   Send me an email with your CV or questions if you want a full time</div>
<div> > job working on this (open source) and helping with other compiler</div>
<div> > optimizations for future ARMv8 servers. Something like 50% of the time</div>
<div> > open source LLVM, 50% in new compiler/JIT opts for future arm server.</div>
<div> ></div>
<div> > ---</div>
<div> > Jose Renau</div>
<div> > UNCORE LLC</div>
<div> ></div>
<div> > _______________________________________________</div>
<div> > LLVM Developers mailing list</div>
<div> > <a href="mailto:llvm-dev@lists.llvm.org">llvm-dev@lists.llvm.org</a></div>
<div> > <a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev">http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev</a></div>
<div> _______________________________________________</div>
<div> LLVM Developers mailing list</div>
<div> <a href="mailto:llvm-dev@lists.llvm.org">llvm-dev@lists.llvm.org</a></div>
<div> <a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev">http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev</a></div>
<div> _______________________________________________</div>
<div> LLVM Developers mailing list</div>
<div> <a href="mailto:llvm-dev@lists.llvm.org">llvm-dev@lists.llvm.org</a></div>
<div> <a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev">http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev</a></div>
</blockquote>
</blockquote></div>

</body></html>