Lock Trace Reduction for Multithreaded Programs

被引:16
|
作者
Cai, Yan [1 ]
Chan, W. K. [1 ]
机构
[1] City Univ Hong Kong, Dept Comp Sci, Hong Kong, Hong Kong, Peoples R China
关键词
Redundant operation optimization; threads; synchronization; TIME;
D O I
10.1109/TPDS.2013.13
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Many happened-before-based detectors for debugging multithreaded programs implement vector clocks to incrementally track the casual relations among synchronization events produced by concurrent threads and generate trace logs. They update the vector clocks via vector-based comparison and content assignment in every case. We observe that many such tracking comparison and assignment operations are removable in part or in whole, which if identified and used properly, have the potential to reduce the log traces thus produced. This paper presents our analysis to identify such removable tracking operations and shows how they could be used to reduce log traces. We implement our analysis result as a technique entitled LOFT. We evaluate LOFT on the well-studied PARSEC benchmarking suite and five large-scale real-world applications. The main experimental result shows that on average, LOFT identifies 63.9 percent of all synchronization operations incurred by the existing approach as removable and does not compromise the efficiency of the latter.
引用
收藏
页码:2407 / 2417
页数:11
相关论文
共 50 条
  • [1] Assuring Lock Usage in Multithreaded Programs with Fractional Permissions
    Zhao, Yano
    Boyland, John
    [J]. ASWEC 2009: 20TH AUSTRALIAN SOFTWARE ENGINEERING CONFERENCE, PROCEEDINGS, 2009, : 277 - +
  • [2] Trace-Driven Verification of Multithreaded Programs
    Yang, Zijiang
    Sakallah, Karem
    [J]. FORMAL METHODS AND SOFTWARE ENGINEERING, 2010, 6447 : 404 - +
  • [3] Deadlock Detection of Multithreaded Programs Based on Lock-augmented Segmentation Graph
    Lu, Fa-Ming
    Zheng, Jia-Jing
    Bao, Yun-Xia
    Zeng, Qing-Tian
    Duan, Hua
    Wang, Xiao-Yu
    [J]. Ruan Jian Xue Bao/Journal of Software, 2021, 32 (06): : 1682 - 1700
  • [4] JRastro: A trace agent for debugging multithreaded and distributed Java']Java programs
    da Silva, GJ
    Schnorr, LM
    Stein, BD
    [J]. 15TH SYMPOSIUM ON COMPUTER ARCHITECTURE AND HIGH PERFORMANCE COMPUTING, PROCEEDINGS, 2003, : 46 - 54
  • [5] Analyzing Lock Contention in Multithreaded Applications
    Tallent, Nathan R.
    Mellor-Crummey, John M.
    Porterfield, Allan
    [J]. ACM SIGPLAN NOTICES, 2010, 45 (05) : 269 - 279
  • [6] Analyzing Lock Contention in Multithreaded Applications
    Tallent, Nathan R.
    Mellor-Crummey, John M.
    Porterfield, Allan
    [J]. PPOPP 2010: PROCEEDINGS OF THE 2010 ACM SIGPLAN SYMPOSIUM ON PRINCIPLES AND PRACTICE OF PARALLEL PROGRAMMING, 2010, : 269 - 279
  • [7] Lock Contention Management in Multithreaded MPI
    Amer, Abdelhalim
    Lu, Huiwei
    Balaji, Pavan
    Chabbi, Milind
    Wei, Yanjie
    Hammond, Jeff
    Matsuoka, Satoshi
    [J]. ACM TRANSACTIONS ON PARALLEL COMPUTING, 2018, 5 (03)
  • [8] Analysis of multithreaded programs
    Rinard, M
    [J]. STATIC ANALYSIS, PROCEEDINGS, 2001, 2126 : 1 - 19
  • [9] Checkpointing multithreaded programs
    Carothers, Christopher D.
    Szymanski, Boleslaw K.
    [J]. Dr. Dobb's Journal, 2002, 27 (08):
  • [10] Security of multithreaded programs by compilation
    Barthe, Gilles
    Rezk, Tamara
    Russo, Alejandro
    Sabelfeld, Andrei
    [J]. COMPUTER SECURITY - ESORICS 2007, PROCEEDINGS, 2007, 4734 : 2 - +