BQ: A Lock-Free Queue with Batching

被引:15
|
作者
Milman, Gal [1 ]
Kogan, Alex [2 ]
Lev, Yossi [2 ]
Luchangco, Victor [2 ]
Petrank, Erez [1 ]
机构
[1] Technion, Haifa, Israel
[2] Oracle Labs, Redwood Shores, CA USA
基金
以色列科学基金会;
关键词
Concurrent Algorithms; Concurrent Data Structures; Lock-Freedom; Linearizability; FIFO Queue;
D O I
10.1145/3210377.3210388
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Concurrent data structures provide fundamental building blocks for concurrent programming. Standard concurrent data structures may be extended by allowing a sequence of operations to be submitted as a batch for later execution. A sequence of such operations can then be executed more efficiently than the standard execution of one operation at a time. In this paper we develop a novel algorithmic extension to the prevalent FIFO queue data structure that exploits such batching scenarios. An implementation in C++ on a multicore demonstrates a significant performance improvement of up to 16x (depending on batch lengths), compared to previous queue implementations.
引用
收藏
页码:99 / 109
页数:11
相关论文
共 50 条
  • [31] Lock-free collective operations
    Supalov, Alexander
    Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), 2003, 2840 : 276 - 285
  • [32] Lock-Free Locks Revisited
    Ben-David, Naama
    Blelloch, Guy E.
    Wei, Yuanhao
    PPOPP'22: PROCEEDINGS OF THE 27TH ACM SIGPLAN SYMPOSIUM ON PRINCIPLES AND PRACTICE OF PARALLEL PROGRAMMING, 2022, : 278 - 293
  • [33] A Cache-Friendly Concurrent Lock-Free Queue for Efficient Inter-Core Communication
    Meng, Xianghui
    Zeng, Xuewen
    Chen, Xiao
    Ye, Xiaozhou
    2017 IEEE 9TH INTERNATIONAL CONFERENCE ON COMMUNICATION SOFTWARE AND NETWORKS (ICCSN), 2017, : 538 - 542
  • [34] Can Lock-free and Combining Techniques Co-exist? A Novel Approach on Concurrent Queue
    Min, Changwoo
    Eom, Young Ik
    2013 22ND INTERNATIONAL CONFERENCE ON PARALLEL ARCHITECTURES AND COMPILATION TECHNIQUES (PACT), 2013, : 403 - 403
  • [35] Lock-free concurrent binomial heaps
    Lowe, Gavin
    JOURNAL OF LOGICAL AND ALGEBRAIC METHODS IN PROGRAMMING, 2018, 101 : 44 - 87
  • [36] Lock-free AntNets and their adaptability evaluations
    Oida, K
    Kataoka, A
    ELECTRONICS AND COMMUNICATIONS IN JAPAN PART I-COMMUNICATIONS, 2001, 84 (02): : 51 - 61
  • [37] Lock-Free Incremental Coordinate Descent
    Mai, Vien V.
    Johansson, Mikael
    2017 IEEE 56TH ANNUAL CONFERENCE ON DECISION AND CONTROL (CDC), 2017,
  • [38] Lock-Free Bucketized Cuckoo Hashing
    Li, Wenhai
    Cheng, Zhiling
    Chen, Yuan
    Li, Ao
    Deng, Lingfeng
    EURO-PAR 2023: PARALLEL PROCESSING, 2023, 14100 : 275 - 288
  • [39] Lock-Free Transactional Adjacency List
    Painter, Zachary
    Peterson, Christina
    Dechev, Damian
    LANGUAGES AND COMPILERS FOR PARALLEL COMPUTING, LCPC 2017, 2019, 11403 : 203 - 219
  • [40] LOCK-FREE GARBAGE COLLECTION FOR MULTIPROCESSORS
    HERLIHY, MP
    MOSS, JEB
    IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, 1992, 3 (03) : 304 - 311