Hi,
as you know lately I've been trying to improve geoserver performance,
so I have some benchmarks that I can use to compare renderers.
The test (provided by Brock, thanks :) ) is drawing 10000 small 10 sided 
polygons with a solid fill, repeating two kind of wms calls:
* a call that renders all of the polygons in a single image
* a call that renders only a subset of them, I believe 2500, by bbox filter

Now, after my optimization work the shapefile renderer and the streaming
renderer provide pretty close average timings on those calls:
* 10k polygons, streaming renderer: 354ms
* 10k polygons, shapefile renderer: 329ms
* 2.5k polygons, streaming renderer: 196ms
* 2.5k polygons, shapefile renderer: 193ms

Now, consider that in these timings there is also the image encoding
overhead, but in my opinion the result is pretty much clear, the
difference is minimal.

In my opinion, the residual difference is due to the fact that the
shapefile renderer is using lite coordinate sequences from bottom up,
whilst shapefile datastore is still creating standard Coordinate[]
based sequences. If we were to modify the shapefile handlers to use a
user provided coordinate sequence factory, I bet the timings would
end up being equal.

What do you think? Any volounteer to do this? Anyone willing
to compare streaming and shapefile renderer on uDig trunk and see if
there is any noticeable difference there (with the current code,
and using an indexed shapefile as the datastore)?

Cheers
Andrea

-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >>  http://get.splunk.com/
_______________________________________________
Geotools-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/geotools-devel

Reply via email to