<div dir="ltr">Did you look at using something other than a DenseMap of a std::map to store the cached disposition? It might be that the problem was too slow of a cache. In particular, it is almost always better to store a DenseMap<std::pair<A*, B*>, C> than a DenseMap<A*, AnyOtherMap<B*, C>>....</div>
<div class="gmail_extra"><br><br><div class="gmail_quote">On Mon, Jan 28, 2013 at 3:41 PM, Gurd, Preston <span dir="ltr"><<a href="mailto:preston.gurd@intel.com" target="_blank">preston.gurd@intel.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">





<div lang="EN-US" link="blue" vlink="purple">
<div>
<p class="MsoNormal">This patch aims to improve compile time performance by removing getLoopDisposition(), which saves the result of ComputeLoopDisposition(), in favour of just recomputing the loop disposition each time it is needed. Similarly, remove getBlockDisposition
 in favour of just recomputing the block disposition when needed.<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">Although at first glance one might think that saving the result of computing a Loop or Block Disposition to avoid re-computing it later should be better than computing the Disposition each time, our benchmark results show a net reduction
 in back end compile time of ~1%. Only one benchmark (xcsoar) slowed slightly.<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">Patch by Wan Xiaofei.<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">PLEASE REVIEW. Thanks!<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">Preston<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">--<u></u><u></u></p>
<p class="MsoNormal">Preston Gurd <<a href="mailto:preston.gurd@intel.com" target="_blank">preston.gurd@intel.com</a>><u></u><u></u></p>
<p class="MsoNormal">  Intel Waterloo<u></u><u></u></p>
<p class="MsoNormal">  SSG/DPD/ECDL/DMP<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
</div>

<br>_______________________________________________<br>
llvm-commits mailing list<br>
<a href="mailto:llvm-commits@cs.uiuc.edu">llvm-commits@cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits</a><br>
<br></blockquote></div><br></div>