Skip to main content
U.S. Department of Energy
Office of Scientific and Technical Information

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

Concurrent operations on priority queues
Journal Article · Sat Dec 31 23:00:00 EST 1988 · Commun. ACM; (United States) · OSTI ID:5871864

Buckets, heaps, lists, and monotone priority queues
Conference · Sun Jun 01 00:00:00 EDT 1997 · OSTI ID:471662

Relaxed heaps
Journal Article · Mon Oct 31 23:00:00 EST 1988 · Commun. ACM; (United States) · OSTI ID:6526005