Contraction Hierarchies is a successful speedup-technique to Dijkstra's seminal shortest path algorithm that has a convenient trade-off between preprocessing and query times. We investigate a shared-memory parallel implementation that uses O(n+m) space for storing the graph and O(1) space for each core during preprocessing. The presented data structures and algorithms consequently exploits cache locality and thus exhibit competitive preprocessing times. The presented implementation is especially suitable for preprocessing graphs of planet-wide scale in practice. Also, our experiments show that optimal data structures in the PRAM model can be beaten in practice by exploiting memory cache hierarchies.
Doing More for Less -- Cache-Aware Parallel Contraction Hierarchies Preprocessing
Dennis Luxen and Dennis Schieferdecker
Technical Report, August 13, 2012, Fakultät für Informatik, Karlsruher Institut für Technologie
|Datum:||Aug 13, 2012|