Scalable queue-based spin locks with timeout

被引:24
|
作者
Scott, ML [1 ]
Scherer, WN [1 ]
机构
[1] Univ Rochester, Dept Comp Sci, Rochester, NY 14627 USA
关键词
D O I
10.1145/568014.379566
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Queue-based spin locks allow programs with busy-wait synchronization to scale to very large multiprocessors, without fear of starvation or performance-destroying contention. So-called try locks, traditionally based on non-scalable test-and-set locks, allow a process to abandon its attempt to acquire a lock after a given amount of time. The process can then pursue an alternative code path, or yield the processor to some other process. We demonstrate that it is possible to obtain both scalability and bounded waiting, using variants of the queue-based locks of Craig, Landin, and Hagersten, and of Mellor-Crummey and Scott. A process that decides to stop waiting for one of these new locks can "link itself out of line" atomically. Single-processor experiments reveal performance penalties of 50-100% for the CLH and MCS try locks in comparison to their standard versions, this marginal cost decreases with larger numbers of processors. We have also compared our queue-based locks to a. traditional test-and-test;-and-set lock with exponential backoff and timeout. At modest (non-zero) levels of contention, the queued locks sacrifice cache locality for fairness, resulting in a worst-case 3X performance penalty. At high levels of contention, however, they display a 1.5-2X performance advantage, with significantly more regular timings and significantly higher rates of acquisition prior to timeout.
引用
收藏
页码:44 / 52
页数:9
相关论文
共 50 条
  • [21] Queue-based Sequential Clustering Method for Interval Datasets
    Cogun, Fuat
    Altiparmak, Fatih
    Balaban, Halim Sinan
    2018 26TH SIGNAL PROCESSING AND COMMUNICATIONS APPLICATIONS CONFERENCE (SIU), 2018,
  • [22] Fairer and More Scalable Reader-Writer Locks by Optimizing Queue Management
    Hoshino, Takashi
    Taura, Kenjiro
    PROCEEDINGS OF THE 2025 THE 30TH ACM SIGPLAN ANNUAL SYMPOSIUM ON PRINCIPLES AND PRACTICE OF PARALLEL PROGRAMMING, PPOPP 2025, 2025, : 115 - 127
  • [23] Queue-Based Resampling for Online Class Imbalance Learning
    Malialis, Kleanthis
    Panayiotou, Christos
    Polycarpou, Marios M.
    ARTIFICIAL NEURAL NETWORKS AND MACHINE LEARNING - ICANN 2018, PT I, 2018, 11139 : 498 - 507
  • [24] Queue-based scheduling for soft real time applications
    Mulas, Fabrizio
    Carta, Salvatore
    Acquaviva, Andrea
    PROCEEDINGS OF THE THIRD INTERNATIONAL CONFERENCES ON ADVANCES IN MULTIMEDIA (MMEDIA 2011), 2011, : 91 - 97
  • [25] Hardware support for release consistency with queue-based synchronization
    Lee, JB
    Jhon, CS
    1997 INTERNATIONAL CONFERENCE ON PARALLEL AND DISTRIBUTED SYSTEMS, PROCEEDINGS, 1997, : 144 - 151
  • [26] Software queue-based algorithms for pipelined synchronization on multiprocessors
    Takesue, M
    2003 INTERNATIONAL CONFERENCE ON PARALLEL PROCESSING WORKSHOPS, PROCEEDINGS, 2003, : 115 - 122
  • [27] iQ: an efficient and flexible queue-based simulation framework
    Roca, Damian
    Nemirovsky, Daniel
    Casas, Marc
    Moreto, Miquel
    Valero, Mateo
    Nemirovsky, Mario
    2017 IEEE 25TH INTERNATIONAL SYMPOSIUM ON MODELING, ANALYSIS, AND SIMULATION OF COMPUTER AND TELECOMMUNICATION SYSTEMS (MASCOTS), 2017, : 143 - 149
  • [28] Optimising Queue-Based Semi-stream Joins by Introducing a Queue of Frequent Pages
    Naeem, M. Asif
    Weber, Gerald
    Lutteroth, Christof
    DATABASES THEORY AND APPLICATIONS, (ADC 2016), 2016, 9877 : 407 - 418
  • [29] A queue-based model for wireless Rayleigh fading channels with memory
    Zhong, LB
    Alajaji, F
    Takahara, G
    VTC2005-FALL: 2005 IEEE 62ND VEHICULAR TECHNOLOGY CONFERENCE, 1-4, PROCEEDINGS, 2005, : 1362 - 1366
  • [30] Queue-Based Modeling of the Aircraft Arrival Process at a Single Airport
    Itoh, Eri
    Mitici, Mihaela
    AEROSPACE, 2019, 6 (10)