The cache hierarchy prevalent in todays high performance processors has to be taken into account in order to design algorithms which perform well in practice. We advocates the approach to adapt external memory algorithms to this purpose. We exemplify this approach and the practical issues involved by engineering a fast priority queue suited to external memory and cached memory which is based on $k$-way merging. It improves previous external memory algorithms by constant factors crucial for transferring it to cached memory. Running in the cache hierarchy of a workstation the algorithm is up to $4.7$ times faster than an optimized binary heap implementation
Memory (cache, DRAM, and disk) is in charge of providing data and instructions to a computer\u27s pr...
We present a model that enables us to analyze the running time of an algorithm on a computer with a ...
This paper presents parallel algorithms for priority queue operations on a p-processor EREWPRAM. The...
The cache hierarchy prevalent in todays high performance processors has to be taken into account in ...
A priority queue Q is a data structure that maintains a collection of elements, each element having ...
We study the impact of using different priority queues in the performance of Dijkstra’s SSSP algorit...
The research software URDME makes use of a priority queue that has support for updating the priority...
A priority queue Q is a data structure that maintains a collection of elements, each ele-ment having...
In this paper we compare the performance of eight different priority queue implementations: four of ...
As memory access times grow larger relative to processor cycle times, the cache performance of algor...
This paper presents a very general technique for the implementation of mergeable priority queues. Th...
Heap-based priority queues are very common dynamical data structures used in several fields, ranging...
We develop an optimal cache-oblivious priority queue data structure, supporting insertion, deletion,...
We present priority queues in the cache-oblivious external memory model with block size B and main m...
Abstract. A priority queue Q is a data structure that maintains a col-lection of elements, each elem...
Memory (cache, DRAM, and disk) is in charge of providing data and instructions to a computer\u27s pr...
We present a model that enables us to analyze the running time of an algorithm on a computer with a ...
This paper presents parallel algorithms for priority queue operations on a p-processor EREWPRAM. The...
The cache hierarchy prevalent in todays high performance processors has to be taken into account in ...
A priority queue Q is a data structure that maintains a collection of elements, each element having ...
We study the impact of using different priority queues in the performance of Dijkstra’s SSSP algorit...
The research software URDME makes use of a priority queue that has support for updating the priority...
A priority queue Q is a data structure that maintains a collection of elements, each ele-ment having...
In this paper we compare the performance of eight different priority queue implementations: four of ...
As memory access times grow larger relative to processor cycle times, the cache performance of algor...
This paper presents a very general technique for the implementation of mergeable priority queues. Th...
Heap-based priority queues are very common dynamical data structures used in several fields, ranging...
We develop an optimal cache-oblivious priority queue data structure, supporting insertion, deletion,...
We present priority queues in the cache-oblivious external memory model with block size B and main m...
Abstract. A priority queue Q is a data structure that maintains a col-lection of elements, each elem...
Memory (cache, DRAM, and disk) is in charge of providing data and instructions to a computer\u27s pr...
We present a model that enables us to analyze the running time of an algorithm on a computer with a ...
This paper presents parallel algorithms for priority queue operations on a p-processor EREWPRAM. The...