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 条
  • [41] Verifying Multi-threaded Software with Impact
    Wachter, Bjoern
    Kroening, Daniel
    Ouaknine, Joel
    2013 FORMAL METHODS IN COMPUTER-AIDED DESIGN (FMCAD), 2013, : 210 - 217
  • [42] A Basis for Verifying Multi-threaded Programs
    Rustan, K.
    Leino, M.
    Mueller, Peter
    PROGRAMMING LANGUAGES AND SYSTEMS, PROCEEDINGS, 2009, 5502 : 378 - 393
  • [43] Multi-threaded adaptive multigrid finite element method for package modeling
    Zhu, Yu
    Mao, Jeffrey
    Kowalski, Marc E.
    Kuo, An-Yu
    ELECTRICAL PERFORMANCE OF ELECTRONIC PACKAGING, 2006, : 307 - 310
  • [44] A Multi-Threaded Semantic Focused Crawler
    Punam Bedi
    Anjali Thukral
    Hema Banati
    Abhishek Behl
    Varun Mendiratta
    Journal of Computer Science & Technology, 2012, 27 (06) : 1233 - 1242
  • [45] Agents as multi-threaded logical objects
    Clark, K
    Robinson, PJ
    COMPUTATIONAL LOGIC: LOGIC PROGRAMMING AND BEYOND, PT I: ESSAYS IN HONOUR OF ROBERT A KOWALSKI, 2002, 2407 : 33 - 65
  • [46] Fairness Metrics for Multi-Threaded Processors
    Vandierendonck, Hans
    Seznec, Andre
    IEEE COMPUTER ARCHITECTURE LETTERS, 2011, 10 (01) : 4 - 7
  • [47] Global multi-threaded instruction scheduling
    Ottoni, Guilherme
    August, David I.
    MICRO-40: PROCEEDINGS OF THE 40TH ANNUAL IEEE/ACM INTERNATIONAL SYMPOSIUM ON MICROARCHITECTURE, 2007, : 56 - 68
  • [48] A reconfigurable multi-threaded architecture model
    Wallner, S
    ADVANCES IN COMPUTER SYSTEMS ARCHITECTURE, 2003, 2823 : 193 - 207
  • [49] A Multi-Threaded Semantic Focused Crawler
    Bedi, Punam
    Thukral, Anjali
    Banati, Hema
    Behl, Abhishek
    Mendiratta, Varun
    JOURNAL OF COMPUTER SCIENCE AND TECHNOLOGY, 2012, 27 (06) : 1233 - 1242
  • [50] Multi-threaded ASP solving with clasp
    Gebser, Martin
    Kaufmann, Benjamin
    Schaub, Torsten
    THEORY AND PRACTICE OF LOGIC PROGRAMMING, 2012, 12 : 525 - 545