2004 · 15 citations · 9 references
ComputingComputer ScienceAlgorithmsEdge ComputingTheory Of ComputationBuffer ManagementCachingCaching StrategiesExternal Memory AlgorithmsMemory HierarchyShortest Path AlgorithmsCache-oblivious AlgorithmsCache-oblivious Graph AlgorithmsCache-oblivious Priority QueuesCache-oblivious QueuesHeap OrganizationShortest Path ProblemsSingle-source Shortest PathsTall-cache Assumption
We present the Buffer Heap (BH), a cache-oblivious priority queue that supports Delete-Min, Delete, and Decrease-Key operations in O(1overB log2 NoverB) amortized block transfers from external memory, where B is the (unknown) block-size and N is the maximum number of elements in the queue. As is common in cache-oblivious algorithms, we assume a 'tall cache' (i.e., M = Ω(B1 + ε), where M is the size of the main memory). We also assume the Decrease-Key operation only verifies that the element does not exist in the priority queue with a smaller key value, hence it also supports the insert operation in the same amortized bound. The amortized time bound for each operation is O(log N). We also present a Cache-Oblivious Tournament Tree (COTT), which is simpler than the Buffer Heap, but has weaker bounds.Using the Buffer Heap we present cache-oblivious algorithms for undirected and directed single-source shortest path (SSSP) problems for graphs with non-negative edge-weights. On a graph with V vertices and E edges, our algorithm for the undirected case performs O(V + EoverB log2 VoverB) block transfers and for the directed case performs O((V + EoverB) . log2 VoverB) block transfers. The running time of both algorithms is O((V + E). log V).For both priority queues with Decrease-Key operation, and for shortest path problems on general graphs, our results appear to give the first non-trivial cache-oblivious bounds.
9
A note on two problems in connexion with graphs
E. Dijkstra · Numerische Mathematik · 1959 · 23.8K citations
The input/output complexity of sorting and related problems
Alok Aggarwal · Communications of the ACM · 1988 · 1.2K citations · Full text
Matteo Frigo, Charles E. Leiserson, Harald Prokop et al. · 2003 · 807 citations
External-memory graph algorithms
Yi‐Jen Chiang, Michael T. Goodrich, Edward F. Grove et al. · KU ScholarWorks (The University of Kansas) · 1995 · 279 citations · Full text