Performance
Previous  Top  Next

Performance of the core routing functionality is important to anyone considering using large street networks.

From the TIGER data (USA) we have extracted a 4,500,000 links street network covering the central part of USA (1600 x 1600 km).

The test was done with this setup:

·Dynamic segmentation, 2 calls to function Coordinate2location  
·Generation of driving directions, function RouteList  
·Latitude/Longitude coordinates  
·Alpha = 1.3  
·Fastest route  
·Caching of all data, except file coord3.bin  
·Computer was an AMD Athlon 64 3200+ with 2 GB RAM.  
·The network required 450 MB harddisk space.  

We have randomly calculated a large number of routes.

Average time per route:


Short routes
Long routes
RAM usage
Normal mode
422 msec
1358 msec
268 MB
Turn restriction mode
645 msec
2876 msec
313 MB


Long routes can be as long as 3100 km, but most will be a lot shorter.
Short routes are within the same network, but start and end location is restricted to a 500 x 500 km rectangle with 450,000 links.

If you use a dataset with attributes for defining a hierarchy, calculation time can be much faster (just 100-200 ms). This is available in RW Net Pro.

Multi-threading

The normal-mode, long route test from above has been executed on a number of different computers and with different number of threads. As can be seen from the table below, true dual CPU gives more processing power than a hyper-threading enabled (HT) CPU. Of course this requires simoultaneous routing requests and an application allowing for it, such as RW NetServer:

Number of routes per minute:

CPU
1 thread
2 threads
3 threads
4 threads
Dual P3-866
19
32


P4-3000 (HT)
34
46


AMD Athlon 64 3200+
44
44


Dual Xeon 3.2 GHz (HT)
40
66
82
92