DocumentCode :
70437
Title :
Integrating Lock-Free and Combining Techniques for a Practical and Scalable FIFO Queue
Author :
Changwoo Min ; Young Ik Eom
Author_Institution :
Coll. of Inf. & Commun. Eng., Sungkyunkwan Univ., Suwon, South Korea
Volume :
26
Issue :
7
fYear :
2015
fDate :
July 1 2015
Firstpage :
1910
Lastpage :
1922
Abstract :
Concurrent FIFO queues can be generally classified into lock-free queues and combining-based queues. Lock-free queues require manual parameter tuning to control the contention level of parallel execution, while combining-based queues encounter a bottleneck of single-threaded sequential combiner executions at a high concurrency level. In this paper, we introduce a different approach using both lock-free techniques and combining techniques synergistically to design a practical and scalable concurrent queue algorithm. As a result, we have achieved high scalability without any parameter tuning: on an 80-thread average throughput in our experimental results, our queue algorithm outperforms the most widely used Michael and Scott queue by 14.3 times, the best-performing combining-based queue by 1.6 times, and the best performing x86-dependent lock-free queue by 1.7 percent. In addition, we designed our algorithm in such a way that the life cycle of a node is the same as that of its element. This has huge advantages over prior work: efficient implementation is possible without dedicated memory management schemes, which are supported only in some languages, may cause a performance bottleneck, or are patented. Moreover, the synchronized life cycle between an element and its node enables application developers to further optimize memory management.
Keywords :
concurrency control; storage management; combining queues; combining techniques; concurrent FIFO queue algorithm; first-in first-out queue; lock-free queues; lock-free techniques; memory management; parallel execution; single-threaded sequential combiner executions; Concurrent computing; Instruction sets; Memory management; Message systems; Scalability; Synchronization; Tuning; Concurrent queue; combining-based queue; compare-and-swap; lock-free queue; memory reclamation; swap;
fLanguage :
English
Journal_Title :
Parallel and Distributed Systems, IEEE Transactions on
Publisher :
ieee
ISSN :
1045-9219
Type :
jour
DOI :
10.1109/TPDS.2014.2333007
Filename :
6844158
Link To Document :
بازگشت