I've been evaluating OSRM, using it primarily as a library from C++. I believe I've determined the answer to most of the questions, but I'm also looking for confirmation. (I understand the reason for these constraints - the trade-off of speed vs flexibility)
First, road speeds are set with 'profile.lua' at the osrm-extract stage. This filters out unnecessary roads (eg. foot paths for car routing), but also applies the road speeds. If I wish to change the speed profile, I need to regenerate the road network with osrm-extract and osrm-routed. Correct? If I wanted different speeds for the final distance/time calculations, I could use the returned route, and apply my own speed table according to the road type of each road segment. This would not, of course, change the route geometry is calculated. If I want a shortest route (distance optimized) instead of a quickest route (time optimized), I need to set all the road speeds to the same speed and regenerate the network. I.e. osrm does not directly support the concept of a "shortest route". The profile is provided with a LUA file. I had to look this one up :-) Looks a useful scripting language, but why is this profile a script file, and not a simple configuration file of constants (eg. key-value pairs)? Seems like an unnecessary complexity - I'd like to understand the perceived advantages. What is that extra power used for? Finally, the memory usage... I saw a reference to the server requiring 40GB of memory for pan-European routing. Presumably that could be offset with a large swap file(?) A large swap file has worked well when I was testing the US-South region on an 8GB machine. Presumably I could do the same for world preparation & routing? Have, perhaps a 100GB+ swap file, ideally on an SSD. Cheers, Richard Marsden _______________________________________________ OSRM-talk mailing list [email protected] https://lists.openstreetmap.org/listinfo/osrm-talk
