skip to main content
OSTI.GOV title logo U.S. Department of Energy
Office of Scientific and Technical Information

Title: Evaluation of concurrent priority queue algorithms. Technical report

Technical Report ·
OSTI ID:5603266

The priority queue is a fundamental data structure that is used in a large variety of parallel algorithms, such as multiprocessor scheduling and parallel best-first search of state-space graphs. This thesis addresses the design and experimental evaluation of two novel concurrent priority queues: a parallel Fibonacci heap and a concurrent priority pool, and compares them with the concurrent binary heap. The parallel Fibonacci heap is based on the sequential Fibonacci heap, which is theoretically the most efficient data structure for sequential priority queues. This scheme not only preserves the efficient operation time bounds of its sequential counterpart, but also has very low contention by distributing locks over the entire data structure. The experimental results show its linearly scalable throughput and speedup up to as many processors as tested (currently 18). A concurrent access scheme for a doubly linked list is described as part of the implementation of the parallel Fibonacci heap. The concurrent priority pool is based on the concurrent B-tree and the concurrent pool. The concurrent priority pool has the highest throughput among the priority queues studied. Like the parallel Fibonacci heap, the concurrent priority pool scales linearly up to as many processors as tested. The priority queues are evaluated in terms of throughput and speedup. Some applications of concurrent priority queues such as the vertex cover problem and the single source shortest path problem are tested.

Research Organization:
Massachusetts Inst. of Tech., Cambridge, MA (USA). Lab. for Computer Science
OSTI ID:
5603266
Report Number(s):
AD-A-232288/1/XAB; MIT/LCS/TR-497; CNN: N00014-89-J-1988
Country of Publication:
United States
Language:
English

Similar Records

A lock-free priority queue design based on multi-dimensional linked lists
Journal Article · Fri Apr 03 00:00:00 EDT 2015 · IEEE Transactions on Parallel and Distributed Systems · OSTI ID:5603266

Concurrent operations on priority queues
Journal Article · Sun Jan 01 00:00:00 EST 1989 · Commun. ACM; (United States) · OSTI ID:5603266

Relaxed heaps
Journal Article · Tue Nov 01 00:00:00 EST 1988 · Commun. ACM; (United States) · OSTI ID:5603266