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 条
  • [41] Sensitivity analysis of queue-based AQM over network parameters
    Patel, Sanjeev
    IET NETWORKS, 2019, 8 (04) : 280 - 288
  • [42] A queue-based approach to power control in wireless communication networks
    Chisci, L.
    Fantacci, R.
    Mucchi, L.
    Pecorella, T.
    IEEE TRANSACTIONS ON WIRELESS COMMUNICATIONS, 2008, 7 (01) : 128 - 134
  • [43] Uncle Traps: Harvesting Rewards in a Queue-based Ethereum Mining Pool
    Werner, Sam M.
    Pritz, Paul J.
    Zamyatin, Alexei
    Knottenbelt, William J.
    PROCEEDINGS OF THE 12TH EAI INTERNATIONAL CONFERENCE ON PERFORMANCE EVALUATION METHODOLOGIES AND TOOLS (VALUETOOLS 2019), 2019, : 127 - 134
  • [44] Queue-based multiple path load balancing routing protocol for MANETs
    Naseem, Mohd
    Kumar, Chiranjeev
    INTERNATIONAL JOURNAL OF COMMUNICATION SYSTEMS, 2017, 30 (06)
  • [45] RQ-AQM: a rate and queue-based active queue management using feedback control theory
    Bisoy, Sukant Kishoro
    Pattnaik, Prasant Kumar
    INTERNATIONAL JOURNAL OF COMMUNICATION NETWORKS AND DISTRIBUTED SYSTEMS, 2018, 21 (02) : 266 - 295
  • [46] Queue-Based Adaptive Duty Cycle Control for Wireless Sensor Networks
    Byun, Heejung
    So, Jungmin
    ALGORITHMS AND ARCHITECTURES FOR PARALLEL PROCESSING, PT II, 2011, 7017 : 205 - +
  • [47] Queue-based cost evaluation of mental simulation process in program comprehension
    Nakamura, M
    Monden, A
    Itoh, T
    Matsumoto, K
    Kanzaki, Y
    Satoh, H
    NINTH INTERNATIONAL SOFTWARE METRICS SYMPOSIUM, PROCEEDINGS, 2003, : 351 - 360
  • [48] Lifetime elongation for wireless sensor network using queue-based approaches
    Jiang, Fuu-Cheng
    Huang, Der-Chen
    Yang, Chao-Tung
    Leu, Fang-Yi
    JOURNAL OF SUPERCOMPUTING, 2012, 59 (03): : 1312 - 1335
  • [49] Queue-based FDP and FCP analysis with detection effort and correction effort
    Zhang, Nan
    Journal of Information and Computational Science, 2015, 12 (01): : 21 - 29
  • [50] A QUEUE-BASED DYNAMIC POWER CONTROL APPROACH FOR WIRELESS COMMUNICATION NETWORKS
    Boeck, Martin
    Kugi, Andreas
    Mecklenbraeuker, Christoph
    2014 6TH INTERNATIONAL SYMPOSIUM ON COMMUNICATIONS, CONTROL AND SIGNAL PROCESSING (ISCCSP), 2014, : 404 - 407