<!DOCTYPE html>
<html><head>
    <meta charset="UTF-8">
</head><body><p>Do we need more testing or could "USE_POINT_Z_M = ON" the default in the next release? </p><blockquote type="cite"><div id="ox-28750726e5" style="font-family: 'Sans Serif'; font-size: 9pt; font-weight: 400; font-style: normal;">Even Rouault <even.rouault@spatialys.com> hat am 30. Juni 2017 um 16:40 geschrieben:<br><br><p style="text-indent: 0px; margin: 0px;">On vendredi 30 juin 2017 09:59:30 CEST Daniel Morissette wrote:</p><p style="text-indent: 0px; margin: 0px;">> On 2017-06-30 9:50 AM, Even Rouault wrote:</p><p style="text-indent: 0px; margin: 0px;">> > I'm wondering if we shouldn't revisit the decision to have USE_POINT_Z_M</p><p style="text-indent: 0px; margin: 0px;">> > disabled by default. This is often annoying.</p><p style="text-indent: 0px; margin: 0px;">> ></p><p style="text-indent: 0px; margin: 0px;">> > Apparently, adding USE_POINT_Z_M defaulting to OFF was driven by</p><p style="text-indent: 0px; margin: 0px;">> > performance reasons per</p><p style="text-indent: 0px; margin: 0px;">> > https://github.com/mapserver/mapserver/issues/1244 . But this was 12</p><p style="text-indent: 0px; margin: 0px;">> > years ago. Perhaps with recent hardware the performance difference isn't</p><p style="text-indent: 0px; margin: 0px;">> > that big. The ticket unfortunately doesn't contain a test case to bench</p><p style="text-indent: 0px; margin: 0px;">> > (likely lots of lines/polygons, or large lines/polygons to render). If</p><p style="text-indent: 0px; margin: 0px;">> > the perf difference is still there, a more involved change would be</p><p style="text-indent: 0px; margin: 0px;">> > indeed to move the z and m components into separate arrays.</p><p style="text-indent: 0px; margin: 0px;">></p><p style="text-indent: 0px; margin: 0px;">> #1244 refers to #1224 which is using the gmap demo mapfile... which is a</p><p style="text-indent: 0px; margin: 0px;">> relatively small dataset, so it should be easy to verify if the issue is</p><p style="text-indent: 0px; margin: 0px;">> still relevant on more recent hardware using gmap or probably any other</p><p style="text-indent: 0px; margin: 0px;">> dataset.</p><p style="text-indent: 0px; margin: 0px;">></p><p style="text-indent: 0px; margin: 0px;">> https://github.com/mapserver/mapserver-import/issues/1224</p><p style="text-indent: 0px; margin: 0px;"> </p><p style="text-indent: 0px; margin: 0px;">OK, I downloaded</p><p style="text-indent: 0px; margin: 0px;">http://dl.maptools.org/dl/gmap-ms46.tar.gz</p><p style="text-indent: 0px; margin: 0px;">(not sure if there's a more uptodate version of it).</p><p style="text-indent: 0px; margin: 0px;">Added the necessary MAP and SYMBOLSET keywords in the mapfile and symbolset file.</p><p style="text-indent: 0px; margin: 0px;"> </p><p style="text-indent: 0px; margin: 0px;">With master, compiled in Release (-O3)</p><p style="text-indent: 0px; margin: 0px;"> </p><p style="text-indent: 0px; margin: 0px;">and the following Python mapscript bench.py</p><p style="text-indent: 0px; margin: 0px;">{{{</p><p style="text-indent: 0px; margin: 0px;">import mapscript</p><p style="text-indent: 0px; margin: 0px;"> </p><p style="text-indent: 0px; margin: 0px;">for i in range(200):</p><p style="text-indent: 0px; margin: 0px;">map = mapscript.mapObj('gmap75.map')</p><p style="text-indent: 0px; margin: 0px;">img1 = map.draw()</p><p style="text-indent: 0px; margin: 0px;">}}}</p><p style="text-indent: 0px; margin: 0px;"> </p><p style="text-indent: 0px; margin: 0px;">I ran it 10 times consecutively with each config and took the smallest time ("real" figure)</p><p style="text-indent: 0px; margin: 0px;"> </p><p style="text-indent: 0px; margin: 0px;">With USE_POINT_Z_M=OFF</p><p style="text-indent: 0px; margin: 0px;"> </p><p style="text-indent: 0px; margin: 0px;">time python bench.py</p><p style="text-indent: 0px; margin: 0px;"> </p><p style="text-indent: 0px; margin: 0px;">real 0m4.167s</p><p style="text-indent: 0px; margin: 0px;">user 0m3.964s</p><p style="text-indent: 0px; margin: 0px;">sys 0m0.200s</p><p style="text-indent: 0px; margin: 0px;"> </p><p style="text-indent: 0px; margin: 0px;">With USE_POINT_Z_M=ON</p><p style="text-indent: 0px; margin: 0px;"> </p><p style="text-indent: 0px; margin: 0px;">time python bench.py</p><p style="text-indent: 0px; margin: 0px;"> </p><p style="text-indent: 0px; margin: 0px;">real 0m4.252s</p><p style="text-indent: 0px; margin: 0px;">user 0m3.972s</p><p style="text-indent: 0px; margin: 0px;">sys 0m0.260s</p><p style="text-indent: 0px; margin: 0px;"> </p><p style="text-indent: 0px; margin: 0px;">So USE_POINT_Z_M=ON is 2% slower than OFF</p><p style="text-indent: 0px; margin: 0px;"> </p><p style="text-indent: 0px; margin: 0px;"> </p><p style="text-indent: 0px; margin: 0px;">On a recent (~ 1 year old) laptop with a</p><p style="text-indent: 0px; margin: 0px;">Intel(R) Core(TM) i7-6700HQ CPU @ 2.60GHz</p><p style="text-indent: 0px; margin: 0px;"> </p><p style="text-indent: 0px; margin: 0px;">Even</p><p style="text-indent: 0px; margin: 0px;"> </p><p style="text-indent: 0px; margin: 0px;">--</p><p style="text-indent: 0px; margin: 0px;">Spatialys - Geospatial professional services</p><p style="text-indent: 0px; margin: 0px;">http://www.spatialys.com</p></div></blockquote><p><br> </p><blockquote type="cite">_______________________________________________<br>mapserver-users mailing list<br>mapserver-users@lists.osgeo.org<br>https://lists.osgeo.org/mailman/listinfo/mapserver-users</blockquote></body></html>