-
Notifications
You must be signed in to change notification settings - Fork 328
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Use libOSRM #34
Comments
This feature should be OK in develop now. To get an idea of the gain that can be expected, I monitored the computing times while solving on a set of problems of sizes 100, 200, 500, 1000 and 2000. The solving part (and solutions) are of course the same so the only major difference between using Computing times (CT) are in ms.
This is only a single execution on a few files but the overall shape seem consistent on other examples. My guess is that on "small" instances, the OSRM response is small enough so that the gain is compensated by the overhead of creating the C++ objects used by libosrm (but then the absolute difference is very small anyway). |
Sorry for dropping off IRC the other day. I'm interested in these numbers, especially how |
I'm interested too in finding a good way to setup a comparison between the two and happy to perform more tests. What makes it difficult is that the Regarding the difference in the client code, both follow the same pattern (see table request wrapper for |
I just had a look at the code: as long as you call If you want to dig deeper here I think the next step is to profile both setups and see what comes up. |
Yes,
Not sure what you have in mind exactly here, but happy to investigate. ;-) |
You're technically correct, the OSRM services should probably be
the OSRM services are safe to call concurrently, so the const/mutable here correctly states
With profiling I mean, to run your benchmarks under |
Closing as using |
We should allow to use libOSRM (rather than osrm-routed) as an option. This could hopefully really speed-up things, saving:
This might be really significant as for small and middle-sized instances the solving time (heuristic + local search) is really very small compared to the times required to retrieve the table and detailed route geometry.
The text was updated successfully, but these errors were encountered: