I’m running Graphhopper off a Ryzen 7950x, which has 32 threads, and I’m a bit disappointed with the results. It seems like Graphhopper is not utilizing all the cores to their full potential- instead it’s hovering at around 20%.
How does Graphhopper handle servers with many threads? Does a single instance utilize all threads or would i be better offer running many instances of Graphhopper and putting a load balance between them?
Every routing request will use only a single thread and so only if you have multiple parallel requests it will use all threads. Or do you mean while import?
I’m referring to taking requests from a user; in my tests, I’m sending multiple parallel requests.
Is the multi-threading behaviour automatic or is there a configuration parameter that needs to be set?
Or is it just a case where my requests aren’t complex enough to use 100% CPU utilization (although I’m sending 1000s of requests- the two endpoints are within 1km)
Just an update for those who see this in the future- my problem ended up being due to a misconfiguration. Graphhopper’s multi-threading seems to work out of the box.