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 条
  • [31] Rate-based versus queue-based models of congestion control
    Deb, S
    Srikant, R
    IEEE TRANSACTIONS ON AUTOMATIC CONTROL, 2006, 51 (04) : 606 - 619
  • [32] Queue-Based Modelling and Detection of Parameters Involved in Stroke Outcome
    Vilic, Adnan
    Petersen, John Asger
    Wienecke, Troels
    Kjaer, Troels W.
    Sorensen, Helge B. D.
    2017 39TH ANNUAL INTERNATIONAL CONFERENCE OF THE IEEE ENGINEERING IN MEDICINE AND BIOLOGY SOCIETY (EMBC), 2017, : 2578 - 2581
  • [33] Queue-based Contention Control for Congested Multihop Wireless Networks
    Hwang, Jaeseon
    Lim, Hyuk
    2008 IEEE 33RD CONFERENCE ON LOCAL COMPUTER NETWORKS, VOLS 1 AND 2, 2008, : 529 - 530
  • [34] A stable queue-based adaptive controller for improving AQM performance
    Chang, Xiaolin
    Muppala, Jogesh K.
    COMPUTER NETWORKS, 2006, 50 (13) : 2204 - 2224
  • [35] Dynamical Queue-based Task Management Policies for Human Operators
    Savla, Ketan
    Frazzoli, Emilio
    2011 AMERICAN CONTROL CONFERENCE, 2011,
  • [36] A queue-based prolong lifetime methods for wireless sensor node
    Huang, Der-Chen
    Tseng, Hsing-Chien
    Deng, Der-Jiunn
    Chao, Han-Chieh
    COMPUTER COMMUNICATIONS, 2012, 35 (09) : 1098 - 1106
  • [37] Distributed queue-based locking using advanced network features
    Devulapalli, A
    Wyckoff, P
    2005 International Conference on Parallel Processsing, Proceedings, 2005, : 408 - 415
  • [38] Event-driven queue-based traffic flow microsimulation
    Charypar, David
    Axhausen, Kay W.
    Nagel, Kai
    TRANSPORTATION RESEARCH RECORD, 2007, 2003 (2003) : 35 - 40
  • [39] IQU: Practical Queue-Based User Association Management for WLANs
    Jardosh, Amit P.
    Mittal, Kimaya
    Ramachandran, Krishna N.
    Belding, Elizabeth M.
    Almeroth, Kevin C.
    MOBICOM 2006, 2006, : 158 - 169
  • [40] Queue-based Spatiotemporal Filter and Clustering for Dynamic Vision Sensor
    Li, Feiqiang
    Huang, Yujie
    Chen, Yaoyi
    Zeng, Xiaoyang
    Li, Wenhong
    Wang, Mingyu
    2023 IEEE INTERNATIONAL SYMPOSIUM ON CIRCUITS AND SYSTEMS, ISCAS, 2023,