Modeling and resolving lock contention for multi-threaded systems

被引:0
|
作者
Zhang, Yang [1 ,2 ]
Talpur, Shahnawaz [1 ]
机构
[1] High Performance Embedded Computing Lab, School of Computer Science and Echnology, Beijing Institute of Technology, No. 5, South Zhongguancun Street, Haidian Dist, Beijing 100081, China
[2] School of Information Science and Engineering, Hebei University of Science and Technology, No. 186, Yuhua East Rd, Shijiazhuang 050018, China
来源
ICIC Express Letters | 2011年 / 5卷 / 12期
关键词
Concurrent control - Contention-aware - Dynamic constraints - Lock contention - Multi-core systems - Multi-threaded application - Multi-threaded system - Program performance - Shared resources - Software transactional memory - Static constraints - Static structures - System response time;
D O I
暂无
中图分类号
学科分类号
摘要
Locks are efficient concurrent control mechanisms to ensure that shared resources are accessed by only a single thread in multi-threaded applications. However, for multi-core systems, lock usage leads to lock contention, which degrades program performance, increases system response time, and negatively affects scalability. This paper initially models lock contention from two aspects: static structure and dynamic behavior. Static constraints of lock contention that describe the contention among threads and the dynamic constraints that define the lock request behavior during contended process are presented. In addition, a contention-aware lock (CA-Lock) is proposed. The CA-Lock is an ordinary lock when there is no contention; it improves the concurrency by transforming into software transactional memory (STM) when the contention is serious. For those situations that are not fitted with STM, the CA-Lock can transform back into an ordinary lock. Primary experimental results show that the CA-Lock can track the best world of lock or STM. © 2011 ICIC International.
引用
收藏
页码:4473 / 4478
相关论文
共 50 条
  • [21] Multi-threaded Object Streaming
    Di Guida, Salvatore
    Govi, Giacomo
    Ojeda, Miguel
    Pfeiffer, Andreas
    Sipos, Roland
    21ST INTERNATIONAL CONFERENCE ON COMPUTING IN HIGH ENERGY AND NUCLEAR PHYSICS (CHEP2015), PARTS 1-9, 2015, 664
  • [22] Toward a multi-threaded glish
    Schiebel, DR
    ASTRONOMICAL DATA ANALYSIS SOFTWARE AND SYSTEMS XI, 2002, 281 : 164 - 168
  • [23] HMalloc: A Hybrid, Scalable, and Lock-free Memory Allocator for Multi-threaded Applications
    Li, Tianlin
    Yao, Yiping
    Tang, Wenjie
    Lin, Zhongwei
    2019 IEEE 25TH INTERNATIONAL CONFERENCE ON PARALLEL AND DISTRIBUTED SYSTEMS (ICPADS), 2019, : 406 - 409
  • [24] POSTER ABSTRACT: Scheduling Multi-Threaded Tasks to Reduce Intra-Task Cache Contention
    Tessler, Corey
    Fisher, Nathan
    2016 IEEE REAL-TIME AND EMBEDDED TECHNOLOGY AND APPLICATIONS SYMPOSIUM (RTAS), 2016,
  • [25] Extending the wait-free hierarchy to multi-threaded systems
    Perrin, Matthieu
    Mostefaoui, Achour
    Bonin, Gregoire
    Courtillat-Piazza, Ludmila
    DISTRIBUTED COMPUTING, 2022, 35 (04) : 375 - 398
  • [26] Spread the Work: Multi-threaded Safety Analysis for Hybrid Systems
    Schupp, Stefan
    Abraham, Erika
    SOFTWARE ENGINEERING AND FORMAL METHODS, SEFM 2018, 2018, 10886 : 89 - 104
  • [27] Multi-threaded Construction of Neighbour Lists for Particle Systems in OpenMP
    Halver, Rene
    Sutmann, Godehard
    PARALLEL PROCESSING AND APPLIED MATHEMATICS, PPAM 2015, PT II, 2016, 9574 : 153 - 165
  • [28] Parallelization of shallow water simulations on current multi-threaded systems
    Lobeiras, Jacobo
    Vinas, Moises
    Amor, Margarita
    Fraguela, Basilio B.
    Arenaz, Manuel
    Garcia, J. A.
    Castro, M. J.
    INTERNATIONAL JOURNAL OF HIGH PERFORMANCE COMPUTING APPLICATIONS, 2013, 27 (04): : 493 - 512
  • [29] Multi-threaded, discrete event simulation of distributed computing systems
    Legrand, I
    COMPUTER PHYSICS COMMUNICATIONS, 2001, 140 (1-2) : 274 - 285
  • [30] Linear algebra considerations for the multi-threaded simulation of mechanical systems
    Negrut, D
    MULTIBODY SYSTEM DYNAMICS, 2003, 10 (01) : 61 - 80