<html><head><meta http-equiv="content-type" content="text/html; charset=UTF-8"><style>body { line-height: 1.5; }blockquote { margin-top: 0px; margin-bottom: 0px; margin-left: 0.5em; }div.foxdiv20170310105420243600 { }body { font-size: 10.5pt; font-family: 'Segoe UI'; color: rgb(0, 0, 0); line-height: 1.5; }</style></head><body>
<div><span></span>Some typo. Sorry for it.</div><div>I have modified it.</div>
<div><br></div><hr style="width: 210px; height: 1px;" color="#b5c4df" size="1" align="left">
<div><span><div style="MARGIN: 10px; FONT-FAMILY: verdana; FONT-SIZE: 10pt"><div>yan.wang</div></div></span></div>
<blockquote style="margin-top: 0px; margin-bottom: 0px; margin-left: 0.5em;"><div> </div><div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm"><div style="PADDING-RIGHT: 8px; PADDING-LEFT: 8px; FONT-SIZE: 12px;FONT-FAMILY:tahoma;COLOR:#000000; BACKGROUND: #efefef; PADDING-BOTTOM: 8px; PADDING-TOP: 8px"><div><b>From:</b> <a href="mailto:yan.wang@linux.intel.com">yan.wang</a></div><div><b>Date:</b> 2017-03-10 10:52</div><div><b>To:</b> <a href="mailto:ruiling.song@intel.com">ruiling.song</a>; <a href="mailto:beignet@lists.freedesktop.org">beignet</a></div><div><b>Subject:</b> Re: [Beignet] [PATCH v2] Provide more possible candidate of load/store as possible.</div></div></div><div><div class="FoxDiv20170310105420243600">
<div><span></span>It comes from darktable perforamnce tuning.</div><div>For float type, maxVecSize is 4, so maxLimit = 4 * 8 = 32.</div><div>I am not sure the reason of maxLimit = maxVecSize * 8.</div><div>32 is too <b>small</b> for <b>searching </b>and could not find more available load after leading load.</div><div>It will improve eaw_decompose kernel of darktable from 2.1876s to 1.8855s because reduce send from 3 send (2 float, 2 float, 1 float) to 2 send (4 float, 1 float).</div><div>There is another issue when <b>compling </b>eaw_decompose kernel and I will submit another patch for it.</div><div>At least need set one low bound for maxLimit like 150 to avoid <b>searching </b>range too <b>small</b>.</div>
<div><br></div><hr style="width: 210px; height: 1px;" color="#b5c4df" size="1" align="left">
<div><span><div style="MARGIN: 10px; FONT-FAMILY: verdana; FONT-SIZE: 10pt"><div>yan.wang</div></div></span></div>
<blockquote style="margin-top: 0px; margin-bottom: 0px; margin-left: 0.5em;"><div> </div><div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm"><div style="PADDING-RIGHT: 8px; PADDING-LEFT: 8px; FONT-SIZE: 12px;FONT-FAMILY:tahoma;COLOR:#000000; BACKGROUND: #efefef; PADDING-BOTTOM: 8px; PADDING-TOP: 8px"><div><b>From:</b> <a href="mailto:ruiling.song@intel.com">Song, Ruiling</a></div><div><b>Date:</b> 2017-03-10 10:39</div><div><b>To:</b> <a href="mailto:yan.wang@linux.intel.com">yan.wang@linux.intel.com</a>; <a href="mailto:beignet@lists.freedesktop.org">beignet@lists.freedesktop.org</a></div><div><b>Subject:</b> Re: [Beignet] [PATCH v2] Provide more possible candidate of load/store as possible.</div></div></div><div><div> </div>
<div> </div>
<div>> -----Original Message-----</div>
<div>> From: Beignet [mailto:beignet-bounces@lists.freedesktop.org] On Behalf Of</div>
<div>> yan.wang@linux.intel.com</div>
<div>> Sent: Thursday, March 9, 2017 5:41 PM</div>
<div>> To: beignet@lists.freedesktop.org</div>
<div>> Cc: Yan Wang <yan.wang@linux.intel.com></div>
<div>> Subject: [Beignet] [PATCH v2] Provide more possible candidate of load/store as</div>
<div>> possible.</div>
<div>> </div>
<div>> From: Yan Wang <yan.wang@linux.intel.com></div>
<div>> </div>
<div>> Avoid searching range too small in some case like vector of float.</div>
<div>> It will lead more load/store merged for improving perforamnce.</div>
<div>> </div>
<div>> Signed-off-by: Yan Wang <yan.wang@linux.intel.com></div>
<div>> ---</div>
<div>> backend/src/llvm/llvm_loadstore_optimization.cpp | 2 +-</div>
<div>> 1 file changed, 1 insertion(+), 1 deletion(-)</div>
<div>> </div>
<div>> diff --git a/backend/src/llvm/llvm_loadstore_optimization.cpp</div>
<div>> b/backend/src/llvm/llvm_loadstore_optimization.cpp</div>
<div>> index e797e98..e569a8e 100644</div>
<div>> --- a/backend/src/llvm/llvm_loadstore_optimization.cpp</div>
<div>> +++ b/backend/src/llvm/llvm_loadstore_optimization.cpp</div>
<div>> @@ -180,7 +180,7 @@ namespace gbe {</div>
<div>> BasicBlock::iterator J = start;</div>
<div>> ++J;</div>
<div>> </div>
<div>> - unsigned maxLimit = maxVecSize * 8;</div>
<div>> + unsigned maxLimit = std::max(maxVecSize * 8, 150u);</div>
<div> </div>
<div>Could you give some performance number against some known benchmarks?</div>
<div>Please select some complex enough OpenCL kernel. Maybe luxmark? Darktable?</div>
<div>How it would benefit the runtime performance and how much it would hurt the compile-time performance?</div>
<div>So we could know whether the change is reasonable.</div>
<div> </div>
<div>Thanks!</div>
<div>Ruiling</div>
<div>> bool reordered = false;</div>
<div>> </div>
<div>> for(unsigned ss = 0; J != E && ss <= maxLimit; ++ss, ++J) {</div>
<div>> --</div>
<div>> 2.7.4</div>
<div>> </div>
<div>> _______________________________________________</div>
<div>> Beignet mailing list</div>
<div>> Beignet@lists.freedesktop.org</div>
<div>> https://lists.freedesktop.org/mailman/listinfo/beignet</div>
<div>_______________________________________________</div>
<div>Beignet mailing list</div>
<div>Beignet@lists.freedesktop.org</div>
<div>https://lists.freedesktop.org/mailman/listinfo/beignet</div>
</div></blockquote>
</div></div></blockquote>
</body></html>