BQ: A Lock-Free Queue with Batching

被引:2
|
作者
Milman-Sela, Gal [1 ,2 ]
Kogan, Alex [2 ]
Lev, Yossi [2 ]
Luchangco, Victor [2 ]
Petrank, Erez [1 ,2 ]
机构
[1] Technion, Haifa, Israel
[2] Oracle Labs, Burlington, MA 01803 USA
基金
以色列科学基金会;
关键词
Concurrent algorithms; concurrent data structures; lock-freedom; linearizability; FIFO queue;
D O I
10.1145/3512757
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
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 article, 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 significant performance improvement of more than an order of magnitude (depending on the batch lengths and the number of threads) compared to previous queue implementations.
引用
收藏
页数:49
相关论文
共 50 条
  • [1] BQ: A Lock-Free Queue with Batching
    Milman, Gal
    Kogan, Alex
    Lev, Yossi
    Luchangco, Victor
    Petrank, Erez
    [J]. SPAA'18: PROCEEDINGS OF THE 30TH ACM SYMPOSIUM ON PARALLELISM IN ALGORITHMS AND ARCHITECTURES, 2018, : 99 - 109
  • [2] A Portable Lock-Free Bounded Queue
    Pirkelbauer, Peter
    Milewicz, Reed
    Felipe Gonzalez, Juan
    [J]. ALGORITHMS AND ARCHITECTURES FOR PARALLEL PROCESSING, ICA3PP 2016, 2016, 10048 : 55 - 73
  • [3] A Memory Efficient Lock-Free Circular Queue
    Miniskar, Narasinga Rao
    Liu, Frank
    Vetter, Jeffrey S.
    [J]. 2021 IEEE INTERNATIONAL SYMPOSIUM ON CIRCUITS AND SYSTEMS (ISCAS), 2021,
  • [4] A Lock-Free, Array-Based Priority Queue
    Liu, Yujie
    Spear, Michael
    [J]. ACM SIGPLAN NOTICES, 2012, 47 (08) : 323 - 324
  • [5] Modeling Energy Consumption of Lock-Free Queue Implementations
    Atalar, Aras
    Gidenstam, Anders
    Renaud-Goud, Paul
    Tsigas, Philippas
    [J]. 2015 IEEE 29TH INTERNATIONAL PARALLEL AND DISTRIBUTED PROCESSING SYMPOSIUM (IPDPS), 2015, : 229 - 238
  • [6] Formal verification of a practical lock-free queue algorithm
    Doherty, S
    Groves, L
    Luchangco, V
    Moir, M
    [J]. FORMAL TECHNIQUES FOR NETWORKED AND DISTRIBUTED SYSTEMS - FORTE 2004, PROCEEDINGS, 2004, 3235 : 97 - 114
  • [7] CBPQ: High Performance Lock-Free Priority Queue
    Braginsky, Anastasia
    Cohen, Nachshon
    Petrank, Erez
    [J]. EURO-PAR 2016: PARALLEL PROCESSING, 2016, 9833 : 460 - 474
  • [8] Persistent Lock-Free Queue for Non-Volatile Memory
    Friedman, Michal
    Herlihy, Maurice
    Marathe, Virendra
    Petrank, Erez
    [J]. ACM SIGPLAN NOTICES, 2018, 53 (01) : 28 - 40
  • [9] Application of Lock-Free Queue in a Fast Command Relay Software
    Wang Sen
    Zhao Qi
    Feng Wen-quan
    [J]. 2009 SECOND INTERNATIONAL CONFERENCE ON FUTURE INFORMATION TECHNOLOGY AND MANAGEMENT ENGINEERING, FITME 2009, 2009, : 572 - 575
  • [10] Lock-free stack and queue: Java']Java vs .NET
    Botincan, Matko
    Runje, Davor
    [J]. PROCEEDINGS OF THE ITI 2007 29TH INTERNATIONAL CONFERENCE ON INFORMATION TECHNOLOGY INTERFACES, 2007, : 741 - +