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 条
  • [1] BQ: A Lock-Free Queue with Batching
    Milman-Sela, Gal
    Kogan, Alex
    Lev, Yossi
    Luchangco, Victor
    Petrank, Erez
    ACM TRANSACTIONS ON PARALLEL COMPUTING, 2022, 9 (01)
  • [2] POSTER: Boost Lock-free Queue and Stack with Batching
    Li, Ao
    Li, Wenhai
    Chen, Yuan
    Deng, Lingfeng
    PROCEEDINGS OF THE 2025 THE 30TH ACM SIGPLAN ANNUAL SYMPOSIUM ON PRINCIPLES AND PRACTICE OF PARALLEL PROGRAMMING, PPOPP 2025, 2025, : 548 - 550
  • [3] A Portable Lock-Free Bounded Queue
    Pirkelbauer, Peter
    Milewicz, Reed
    Felipe Gonzalez, Juan
    ALGORITHMS AND ARCHITECTURES FOR PARALLEL PROCESSING, ICA3PP 2016, 2016, 10048 : 55 - 73
  • [4] A Memory Efficient Lock-Free Circular Queue
    Miniskar, Narasinga Rao
    Liu, Frank
    Vetter, Jeffrey S.
    2021 IEEE INTERNATIONAL SYMPOSIUM ON CIRCUITS AND SYSTEMS (ISCAS), 2021,
  • [5] A Lock-Free, Array-Based Priority Queue
    Liu, Yujie
    Spear, Michael
    ACM SIGPLAN NOTICES, 2012, 47 (08) : 323 - 324
  • [6] Modeling Energy Consumption of Lock-Free Queue Implementations
    Atalar, Aras
    Gidenstam, Anders
    Renaud-Goud, Paul
    Tsigas, Philippas
    2015 IEEE 29TH INTERNATIONAL PARALLEL AND DISTRIBUTED PROCESSING SYMPOSIUM (IPDPS), 2015, : 229 - 238
  • [7] Formal verification of a practical lock-free queue algorithm
    Doherty, S
    Groves, L
    Luchangco, V
    Moir, M
    FORMAL TECHNIQUES FOR NETWORKED AND DISTRIBUTED SYSTEMS - FORTE 2004, PROCEEDINGS, 2004, 3235 : 97 - 114
  • [8] CBPQ: High Performance Lock-Free Priority Queue
    Braginsky, Anastasia
    Cohen, Nachshon
    Petrank, Erez
    EURO-PAR 2016: PARALLEL PROCESSING, 2016, 9833 : 460 - 474
  • [9] Persistent Lock-Free Queue for Non-Volatile Memory
    Friedman, Michal
    Herlihy, Maurice
    Marathe, Virendra
    Petrank, Erez
    ACM SIGPLAN NOTICES, 2018, 53 (01) : 28 - 40
  • [10] Lock-free stack and queue: Java']Java vs .NET
    Botincan, Matko
    Runje, Davor
    PROCEEDINGS OF THE ITI 2007 29TH INTERNATIONAL CONFERENCE ON INFORMATION TECHNOLOGY INTERFACES, 2007, : 741 - +