Towards Providing Low-Overhead Data Race Detection for Large OpenMP Applications

被引:9
|
作者
Protze, Joachim [1 ]
Atzeni, Simone [2 ]
Ahn, Dong H. [3 ]
Schulz, Martin [3 ]
Gopalakrishnan, Ganesh [2 ]
Mueller, Matthias S. [1 ]
Laguna, Ignacio [3 ]
Rakamaric, Zvonimir [2 ]
Lee, Greg L. [3 ]
机构
[1] Rhein Westfal TH Aachen, Aachen, Germany
[2] Univ Utah, Salt Lake City, UT 84112 USA
[3] Lawrence Livermore Natl Lab, Livermore, CA USA
来源
PROCEEDINGS OF LLVM-HPC 14 2014 LLVM COMPILER INFRASTRUCTURE IN HPC | 2014年
关键词
D O I
10.1109/LLVM-HPC.2014.7
中图分类号
TM [电工技术]; TN [电子技术、通信技术];
学科分类号
0808 ; 0809 ;
摘要
Neither static nor dynamic data race detection methods, by themselves, have proven to be sufficient for large HPC applications, as they often result in high runtime overheads and/or low race-checking accuracy. While combined static and dynamic approaches can fare better, creating such combinations, in practice, requires attention to many details. Specifically, existing state-ofthe-art dynamic race detectors are aimed at low-level threading models, and cannot handle high-level models such as OpenMP. Further, they do not provide mechanisms by which static analysis methods can target selected regions of code with sufficient precision. In this paper, we present our solutions to both challenges. Specifically, we identify patterns within OpenMP runtimes that tend to mislead existing dynamic race checkers and provide mechanisms that help establish an explicit happens before relation to prevent such misleading checks. We also implement a fine-grained blacklist mechanism to allow a runtime analyzer to exclude regions of code at line number granularity. We support race checking by adapting ThreadSanitizer, a mature data-race checker developed at Google that is now an integral part of Clang and GCC; and we have implemented our techniques within the state-of-the-art Intel OpenMP Runtime. Our results demonstrate that these techniques can significantly improve runtime analysis accuracy and overhead in the context of data race checking of OpenMP applications.
引用
收藏
页码:40 / 47
页数:8
相关论文
共 50 条
  • [21] GRace: A Low-Overhead Mechanism for Detecting Data Races in GPU Programs
    Zheng, Mai
    Ravi, Vignesh T.
    Qin, Feng
    Agrawal, Gagan
    ACM SIGPLAN NOTICES, 2011, 46 (08) : 135 - 145
  • [22] AudiTrim: A Real-time, General, Efficient, and Low-overhead Data Compaction System for Intrusion Detection
    Sun, Hongbin
    Wang, Su
    Wang, Zhiliang
    Jiang, Zheyu
    Han, Dongqi
    Yang, Jiahai
    PROCEEDINGS OF 27TH INTERNATIONAL SYMPOSIUM ON RESEARCH IN ATTACKS, INTRUSIONS AND DEFENSES, RAID 2024, 2024, : 263 - 277
  • [23] Low-overhead distribution strategy for simulation and optimization of large-area metasurfaces
    Skarda, Jinhie
    Trivedi, Rahul
    Su, Logan
    Ahmad-Stein, Diego
    Kwon, Hyounghan
    Han, Seunghoon
    Fan, Shanhui
    Vuckovic, Jelena
    NPJ COMPUTATIONAL MATERIALS, 2022, 8 (01)
  • [24] LOFFS: A Low-Overhead File System for Large Flash Memory on Embedded Devices
    Zhang, Runyu
    Liu, Duo
    Chen, Xianzhang
    She, Xiongxiong
    Yang, Chaoshu
    Tan, Yujuan
    Shen, Zhaoyan
    Sho, Zili
    PROCEEDINGS OF THE 2020 57TH ACM/EDAC/IEEE DESIGN AUTOMATION CONFERENCE (DAC), 2020,
  • [25] Enhancing loop buffering of media and telecommunications applications using low-overhead predication
    Sias, JW
    Hunter, HC
    Hwu, WMW
    34TH ACM/IEEE INTERNATIONAL SYMPOSIUM ON MICROARCHITECTURE, MICRO-34, PROCEEDINGS, 2001, : 262 - 273
  • [26] Low-overhead distribution strategy for simulation and optimization of large-area metasurfaces
    Jinhie Skarda
    Rahul Trivedi
    Logan Su
    Diego Ahmad-Stein
    Hyounghan Kwon
    Seunghoon Han
    Shanhui Fan
    Jelena Vučković
    npj Computational Materials, 8
  • [27] OpenMP Tools Interface: Synchronization Information for Data Race Detection
    Protze, Joachim
    Hahnfeld, Jonas
    Ahn, Dong H.
    Schulz, Martin
    Mueller, Matthias S.
    SCALING OPENMP FOR EXASCALE PERFORMANCE AND PORTABILITY (IWOMP 2017), 2017, 10468 : 249 - 265
  • [28] Low-overhead fault tolerance for high-throughput data processing systems
    Martin, Andre
    Knauth, Thomas
    Creutz, Stephan
    Becker, Diogo
    Weigert, Stefan
    Fetzer, Christof
    Brito, Andrey
    31ST INTERNATIONAL CONFERENCE ON DISTRIBUTED COMPUTING SYSTEMS (ICDCS 2011), 2011, : 689 - 699
  • [29] Low-Overhead Compressibility Prediction for High-Performance Lossless Data Compression
    Kim, Youngil
    Choi, Seungdo
    Lee, Daeyong
    Jeong, Joonyong
    Kwak, Jaewook
    Lee, Jungkeol
    Lee, Gyeongyong
    Lee, Sangjin
    Park, Kibin
    Jeong, Jinwoo
    Kexin, Wang
    Song, Yong Ho
    IEEE ACCESS, 2020, 8 : 37105 - 37123
  • [30] Forget Failure: Exploiting SRAM Data Remanence for Low-overhead Intermittent Computation
    Williams, Harrison
    Jian, Xun
    Hicks, Matthew
    TWENTY-FIFTH INTERNATIONAL CONFERENCE ON ARCHITECTURAL SUPPORT FOR PROGRAMMING LANGUAGES AND OPERATING SYSTEMS (ASPLOS XXV), 2020, : 69 - 84