[OSM-dev] How to earn undying fame
Lambertus
osm at na1400.info
Mon Jun 21 17:30:37 BST 2010
Hopefully I can help a bit with some numbers, I hope Nic doesn't mind.
These numbers originate from yournavigation.org which is a full
opensource routing website using (an older version) Gosmore as routing
backend.
The server that runs the website is a VM with two Xeon 2GHz cores and
2GB RAM. This very limited amount of RAM makes it a bit difficult to do
representative benchmarks (harddisk I/O is killing), so please keep that
in mind before reading on...
Under optimal conditions where the required bit of the route database is
already loaded into RAM, Gosmore can calculate most routes in a few
milliseconds to about 100 ms with peaks of half a second using a single
core. A single core should therefore be able to sustain 10 requests per
second, but I've seen 20 requests per second too. I think that Gosmore
will scale nicely in handling concurrent requests when given more cores,
provided enough RAM is available.
I'm doing Gosmore database updates on a C2D P8600 (2.4 GHz) laptop with
4GB RAM is about 8 to 10 hours, so weekly updates won't be a problem.
Database sizes:
October 2009: 7 GB America's, 4.9 GB Europe, Asia, Africa, Oceania
May 2010: America's estimated: 10 GB, 9.9 GB Europe, Asia, Africa, Oceania
The database not only contains the road network but also almost all
other items in the OSM database (administrative, landuse, poi, houses
etc). These could all be left out, but I don't have the figures.
My own reservation towards this plan is that (older versions at least)
Gosmore doesn't handle very long routes well but, again, this might be a
result of the low amount of ram in my server. And I don't know if newer
Gosmore versions handle long routes better...Nic?
Would it be a good idea to setup a test on the OSM dev server? This
server already has a lot of RAM and should behave much closer to a real
world server. I can provide a request trace log from yournavigation.org
that covers e.g. a whole week (which would be up to 20.000 requests) and
run it through a script against Gosmore. That should provide a
real-world test and gives you an idea of what to expect.
More information about the dev
mailing list