The raster benchmarks have been a outstanding success with 3,000 + page views over the last 40-odd days. But what I’ve been struggling with is how to expand to more software or more platforms. Clearly I am not the master of web GIS Applications because I still for the life of me can’t get Mapguide configured so I’ve thrown up my hands and will claim DLL Hell. The Deegree guys are keen, but their preferred storage mechanism is tiles. I’ve gotten lots of hits from ESRI, Lizardtech, Cadcorp, Autodesk, Caris, Rolta, Intergraph and Mapinfo (to name a few) so I’m sure they’re keen aren’t you guys? *nods*. Everyone wants stats on different hardware configurations. Everyone keeps emailing me.
So here’s my thought. It might fail miserably; I might get no-one submitting any responses but here goes. If it fails, then there’s always Barcelona i guess and the list
I’d like to propose the following raster challenge to whoever is reading this (eg. you). You do not need to be the software developer on the project, in fact it will be more interesting if there’s both developer and real user feedback!
- Download the BlueMarble world-topo-bathy-200406-3×86400×43200 (2.2 gb torrent) worldwide series
- Convert, tile, compress, pyramid, overview, palette the original dataset into whatever format or file composition you’d like. Configure your server accordingly to read the dataset and serve out as an OGC WMS
- Document the steps used to configure the dataset (hint: reproducible). Include details on the final disk storage and or number/size of files
- Document your server hardware configuration. Particular emphasis on OS, CPU, Memory and Disk configuration
- Document your software configuration. This time you’re not bound to prior documentation so developers, go for your life … users, do your best
- Download the attached JMX plan and reconfigure the server details. Do not modify any other part of the plan apart from Lines 482 to 550
- Install JMeter if you havent already and execute the plan
- jmeter -n -p jmeter.properties -t myserver-bluemarble.xml -l myserver-bluemarble.xml.logs
- Run the OSGEO Benchmarking summarizer.py
- python summarizer.py myserver-bluemarble.xml.logs > myserver-bluemarble.xml.sum
- Zip the documentation, myserver-bluemarble.xml.logs as well as myserver-bluemarble.xml.sum
- Email the zip to me at chri…@webmapper.com.au and i’ll update the benchmarking page as soon as they come in
The idea behind this is to remove any ambiguity behind a single person configuring all apps, see if the they scale across different deployments, allow applications to use their “preferred” format and most importantly see whether users can reproduce the results!
This is clearly not going to be a comparative exercise. Even if you dont have a crazy 8/16 core server machine, I’d still urge you to submit the results. The point here is to get as many applications documenting how to squeeze the highest peak performance out of each. Results will not be compared as the platform will never be the same by design … Apple. Meet Orange.

Let the games begin~
Sourcing independant benchmarks or comparisons is always a difficult exercise. To continue on my recent raster benchmark quest, here are some other similar raster performance studies i’ve found round the interweb. If you know of any others, please throw them in the comments!
ESRI Image Server vs LizardTech Express Server
http://geoinfo1.lib.uidaho.edu/loadtest/ (June 2009)
Not much background info on the test setup in particular the input data … but the Pylot results are available and when compared produce a clear winner in LizardTech at all tests. The following are the throughput achieved at 50 user load. The average response times showed Express Server with ~0.5 sec average compared with ~2.5 seconds with Image Server.


Pursuit of the Perfect Digital Ortho File Format
http://www.igic.org/training/pres/conf/2009/perfectortho.pdf (February 2009)
Although again lacking specific reasoning on how they ran the tests., this one is more centered on desktop performance reading a variety of raster formats. There’s a couple of flaws with the support table, as ECW is in fact supported through Microsoft Office and likewise ESRI Image Server can also read the format after purchasing the required license from ERDAS. I would have liked Larry to list the resulting file sizes but his general consensus of running with 2 formats … Geotiff + JPEG compressed with ECW seems like a common conclusion. People seem to forget however that as soon as you introduce enterprise image serving capabilities, the output formats caters for the common request to be able to open in MS Paint or MS Word. I would love to see someone try to open a 700mb JPEG Compressed GeoTIFF in Paint without waiting a very, very long time
Overall though, ECW achieved very good performance in many of the tests with Geotiff winning some large scale tests, presumably when it was requesting 1 reasonably sized geotiff tile

Small update,
- Added a new ECW 256px tile test
- Added a new ECW reprojection test
- Added some more info on my mapguide config problems
I’m still keen for someone to verify my numbers. It would be nice to know whether I’m alone in the universe or not even if the setup is different ..
I am pleased to announce my own performance metrics continuuing on from the FOSS4G 2009 WMS Raster tests. So, whats new?
- Tests extended from just TIF and ECW to TIF, ECW, JP2, MrSID, TIF Tiled, TIF Internal Pyramid, TIF External Pyramid
- Platform changed from RHEL to Windows Server 2008 x64
- Increased the threads from 1,10,20,40 to 1,10,20,40,80,150.
- Hardware increased from a 4 core to 8 core server
- Analysed throughput not only by input format, but by output WMS Format as well. 8bit PNG vs 24 bit PNG vs JPEG vs GIF
- Added ERDAS Apollo to the mix along with Mapserver and Geoserver (Deegree and Mapguide was with very limited success … I’ll add these later)
I will endeavour to update the page with new results as there is no question further tuning could be applied. I am not going to comment specifically on the results, as I want to leave the interpretation up to you.

Look out for more performance tests in the coming days..
Enjoy!
I’ve long had issues with PostgreSQL 8.3 and now 8.4 refusing to start on my laptop which is really a pain for live demonstrations of ERDAS Apollo. I’m not sure if anyone else has similar problems, but I believe (or rather have a hunch) that it is something to do with “ungraceful” shutdowns of the db when you may lose power or consistently go to sleep. Its only ever occured on my laptop, so luckily postgres on a server is still stable as hell.
If you are getting something like the following in postgresql.log on Windows or are just tearing your hair out wondering why the service that was working before is no longer starting …
2009-12-04 09:05:37 WSTLOG: database system is ready to accept connections
FATAL: could not reattach to shared memory (key=240, addr=02690000): 487
2009-12-04 09:05:38 WSTLOG: autovacuum launcher started
2009-12-04 09:05:38 WSTLOG: background writer process (PID 9712) exited with exit code 1
2009-12-04 09:05:38 WSTLOG: terminating any other active server processes
2009-12-04 09:05:38 WSTLOG: all server processes terminated; reinitializing
2009-12-04 09:05:48 WSTFATAL: pre-existing shared memory block is still in use
2009-12-04 09:05:48 WSTHINT: Check if there are any old server processes still running, and terminate them.
To reliably fix things for me anyway,
- Delete postmaster.opts or postmaster.pid (if they exist) in your postgres data dir
- Kill the pg_ctl.exe process (if running)
- Start the postgres service
Success!

Recent Comments