<div dir="ltr"><div>Hi Prahalad,<br><br></div><div><div><div class="gmail_extra"><div class="gmail_quote">2017-05-11 11:46 GMT+02:00 Prahalad Kumar Narayanan <span dir="ltr"><<a href="mailto:prahalad.kumar.narayanan@oracle.com" target="_blank">prahalad.kumar.narayanan@oracle.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hello Lauren<br>
<br>
+1 for the code changes.<br>
<br>
Without going through the specifics, I imported the code & checked for successful build.<br>
The build succeeded with the patch from your latest webrev link.<br></blockquote><div><br>Thanks for the review.<br><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
Just for knowledge: You would have checked for the performance improvement with your improved Marlin renderer.<br>
Can you share your insights and any specific use-cases that have benefited ?<br></blockquote><div><br></div><div>Could you be more precise ? Do you mean the performance improvements between Marlin 0.7.5 and 0.7.4 ? <br>or in general by the Marlin renderer vs Pisces ...<br><br></div><div>In Marlin 0.7.5, I modified several aspects:<br></div><div>- double-precision (double) vs single-precision (float): ~ equivalent performance<br></div><div>- tile fills optimization: it benefits to large shapes (almost empty / full) like large circles or disks: up to 10% faster for large shapes measured with my MapBench tool (ellipse-fill commands from radius = 1 to 1000)<br></div><div>- higher precision for curve / quad approximation: it impacts performance as more segments are generated, sorted and rasterized ~ 10% globally in my MapBench runs.<br><br></div><div>I could provide some results if you want.<br></div><div><br></div><div>Finally I am going to work again on Java2D pipeline optimizations: avoid Path2D iterators, TexturePaint / CompositePaint (array / raster cache + loops)...<br></div><div><br></div><div>PS: I still plan one day to implement another approach to compute pixel coverage (exact) like agg / libart that could improve both quality and performance a bit (1 single scanline with more maths) but no more 8 scanlines.<br></div><div><br></div><div>Regards,<br></div><div>Laurent</div></div></div></div></div></div>