itinero / routing

The routing core of itinero.
Apache License 2.0
221 stars 70 forks source link

Performance test custom memory mapping profiles. #247

Open xivk opened 5 years ago

xivk commented 5 years ago

We should be able to document recommendations on how to handle memory mapping and what gives best performance.

It should be doable to partially load routerdbs without too much of a performance penalty but it needs testing:

What combination of these is best under what circumstances. We can then provide better defaults of this profile:

https://github.com/itinero/routing/blob/develop/src/Itinero/RouterDbProfile.cs#L30

airbreather commented 5 years ago

FWIW, "real" memory-mapped files like I was talking about in itinero/reminiscence#11 would have just one caching "profile": the operating system decides which pages to swap out based on how much we're using them and demand from other applications, and it all happens transparently.

xivk commented 5 years ago

@airbreather Yes, that would be best.

But on top of that it's probably also useful to determine what data can be used with memory-mapping and what data should always be available in memory.

Would you be interested in talking about all this more directly? I'm working on so many things and it's hard to keep up with everything. Perhaps using gitter/slack or something else?