Adaptive Cache-Friendly Priority Queue: Enhancing Heap-Tree Efficiency for Modern Computing
Kiarash Parvizi

TL;DR
This paper introduces an adaptive, cache-friendly priority queue that optimizes heap structure for modern systems, reducing cache misses and improving performance through adjustable parameters and dynamic memory layout.
Contribution
It presents a novel adaptive priority queue design that balances cache efficiency and operation costs, with automated parameter tuning and dynamic growth capabilities.
Findings
Reduces cache misses compared to traditional models
Improves heap sort performance in tests
Minimizes memory usage with compact layout
Abstract
Priority queues are fundamental data structures with widespread applications in various domains, including graph algorithms and network simulations. Their performance critically impacts the overall efficiency of these algorithms. Traditional priority queue implementations often face cache-related performance bottlenecks, especially in modern computing environments with hierarchical memory systems. To address this challenge, we propose an adaptive cache-friendly priority queue that utilizes three adjustable parameters to optimize the heap tree structure for specific system conditions by making a tradeoff between cache friendliness and the average number of cpu instructions needed to carry out the data structure operations. Compared to the implicit binary tree model, our approach significantly reduces the number of cache misses and improves performance, as demonstrated through rigorous…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsParallel Computing and Optimization Techniques · Graph Theory and Algorithms · Network Packet Processing and Optimization
