[mapserver-dev] Motion: hatch rendering performance

Lime, Steve D (DNR) steve.lime at state.mn.us
Fri Apr 15 11:42:44 EDT 2011


By upstream version (4.2) that's of the clipper code I assume. Your proposal
is to use not use the clipper software library at all then, correct?

Sounds like the only reasonable course of action. +1 assuming appropriate
Documentation. If AGG works then that's probably sufficient for most folks.

What about the clipping code in mapprimitive.c?

Steve

-----Original Message-----
From: mapserver-dev-bounces at lists.osgeo.org [mailto:mapserver-dev-bounces at lists.osgeo.org] On Behalf Of thomas bonfort
Sent: Friday, April 15, 2011 10:34 AM
To: Havard Tveite
Cc: mapserver-dev at lists.osgeo.org
Subject: [mapserver-dev] Motion: hatch rendering performance

I can confirm there is a serious performance penalty with the clipper
software library used for hatching, compared to the older agg version
we were using in 5.x

I can update the clipper code we are using to the newer upstream
version (4.2) as it is providing a substantial speedup compared to the
one we are using, but it is still very much slower than the 5.x
timings we had, so much that I wonder if we should not disable it for
now as it is heavy enough to cause a denial of service.

Given that this is a blocker for 6.0, I move that we use the older agg
clipping for the agg renderer, and temporarily disable HATCH symbol
support for the other renderers until we find a viable alternative.

I'll start with my +1

--
thomas



On Mon, Mar 14, 2011 at 10:30, Havard Tveite <havard.tveite at umb.no> wrote:
> I really like the new way of rendering hatches (all hatches
> are aligned to a global origin).
> But I have a performance problem with hatches in 6.0.0beta1.
>
> I have a WMS service, and the rendering time is very much
> higher for 6.0.0beta1 than for version 5, and it scales badly
> with image size.
>
> Example network response times for a 1000x1000 PNG image
> (Firebug numbers):
> 6beta1: 11.47s (931.1 KB)
> 5.6.6: 1.84s (1.2 MB)
>
> Example network response times for a 2000x2000 PNG image:
> 6beta1: 1min 49s (2.9 MB)
> 5.6.6: 2.36s (4.3 MB)
>
> If I change from hatches to solid fill, the response time for
> a 1000x1000 is reduced to 282ms (199.9 KB).
>
> My symbol definition is:
> SYMBOL
>  NAME "hatch"
>  TYPE hatch
> END
>
> An here is an example of my usage of the hatch symbol:
> STYLE
>  SYMBOL "hatch"
>  WIDTH 1 # line thickness
>  ANGLE 135 # hatch angle
>  SIZE 5  # line density
>  COLOR 153 0 255
> END # style
>
>
> Håvard Tveite
>
> On 3/10/2011 3:46 AM, Daniel Morissette wrote:
>>
>> The MapServer Team is pleased to announce the release of MapServer
>> 6.0.0-beta1. This is the first beta on our way to a final 6.0 release.
>>
>> This new release introduces important changes in key components of the
>> MapServer core (rendering, query and expressions), and for this reason
>> we count on you, MapServer power users, to help test the release in your
>> respective environments and provide feedback (through the users list or
>> Trac tickets).
>>
>> The timing and feedback for this first beta is very important since it
>> comes one week before the Montreal Code Sprint where about a dozen
>> participants will be working specifically on MapServer and will have a
>> chance to tackle important 6.0 issues that may be found and reported.
>>
>> Here is a quick list of RFCs documenting some of the new features or
>> important changes in 6.0. This list is not complete, we will update it
>> as we polish the release documentation:
>>
>> Core Changes in MapServer 6.0 which could affect existing applications:
>>
>> * MS RFC 54: Rendering Interface API
>> * MS RFC 64: MapServer Expression Parser Overhaul
>> * MS RFC 65: Single-pass Query Changes for 6.0
>>
>> New Features and Enhancements in MapServer 6.0:
>>
>> * MS RFC 58: Kml Output
>> * MS RFC 60: Labeling enhancement: ability to skip ANGLE FOLLOW labels
>> with too much character overlap
>> * MS RFC 61: Enhance MapServer Feature Style Support
>> * MS RFC 62: Support Additional WFS GetFeature Output Formats
>> * MS RFC 63: Built-in OpenLayers map viewer
>> * MS RFC 66: Better handling of temporary files
>> * MS RFC 67: Enable/Disable Layers in OGC Web Services
>> * MS RFC 68: Support for combining features from multiple layers
>> * MS RFC 69: Support for clustering of features in point layers
>>
>> (RFCs are available online at http://mapserver.org/development/rfc/)
>>
>> As usual there an a large number of additional small enhancements and
>> bug fixes. For a complete list see the HISTORY.TXT file at:
>>
>>
>>  http://svn.osgeo.org/mapserver/tags/rel-6-0-0-beta1/mapserver/HISTORY.TXT
>>
>> We have started working on a 5.6 ->  6.0 migration guide. This document
>> contains important notes on backwards incompatibilities or other changes
>> required when upgrading to 6.0. It is not complete yet but we strongly
>> recommend that you review the latest version online at:
>>
>>
>> http://trac.osgeo.org/mapserver/browser/trunk/mapserver/MIGRATION_GUIDE.TXT
>>
>> The source for this release can be downloaded at:
>>
>>      http://mapserver.org/download.html
>> or
>>      http://download.osgeo.org/mapserver/mapserver-6.0.0-beta1.tar.gz
>>
>> The binary distributions listed in the download page should be updated
>> with binaries for the new 6.0.0-beta1 release in the next day or so.
>>
>>
>> This is the first of four planned beta releases and if all goes well a
>> final release should occur around the end of April. The full release
>> plan can be viewed at:
>>
>>    http://trac.osgeo.org/mapserver/wiki/60ReleasePlan
>>
>> Once again we need your help to ensure a high quality product,
>> especially for this beta due to its timing with next week's Code Sprint,
>> so please help out by testing your applications with this new code base.
>>
>> Thanks! - The MapServer Team
>>
>> _______________________________________________
>> mapserver-dev mailing list
>> mapserver-dev at lists.osgeo.org
>> http://lists.osgeo.org/mailman/listinfo/mapserver-dev
>>
>
> --
> Håvard Tveite
> Department of Mathematical Sciences and Technology, UMB
> Drøbakveien 31, POBox 5003, N-1432 Ås, NORWAY
> Phone: +47 64965483 Fax: +47 64965401 http://www.umb.no/imt/
> _______________________________________________
> mapserver-dev mailing list
> mapserver-dev at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/mapserver-dev
>
_______________________________________________
mapserver-dev mailing list
mapserver-dev at lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/mapserver-dev



More information about the mapserver-dev mailing list