Detecting Thread-Safety Violations in Hybrid OpenMP/MPI Programs

被引:11
|
作者
Ma, Hongyi [1 ]
Wang, Liqiang [1 ]
Krishnamoorthy, Krishanthan [1 ]
机构
[1] Univ Wyoming, Dept Comp Sci, Laramie, WY 82071 USA
基金
美国国家科学基金会;
关键词
Hybrid MPI/OpenMP; Thread-safety Violation; Race; Static Analysis; Dynamic Analysis;
D O I
10.1109/CLUSTER.2015.70
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
We propose an approach by integrating static and dynamic program analyses to detect thread safety violations in hybrid MPI/OpenMP programs. We innovatively transform the thread-safety violation problems to race conditions problems. In our approach, the static analysis identifies a list of MPI calls related to thread-safety violations, then replaces them with our own MPI wrappers, which involve accesses to some specific shared variables. The static analysis avoids instrumenting unrelated code, which significantly reduces runtime overhead. In the dynamic analysis, both happen-before and lockset-based race detection algorithms are used to detect races on these aforementioned shared variables. By detecting races, we can identify thread-safety violations according to their specifications. Our experimental evaluation over real-world applications shows that our approach is both accurate and efficient.
引用
收藏
页码:460 / 463
页数:4
相关论文
共 50 条
  • [1] Thread-safety in an MPI implementation: Requirements and analysis
    Gropp, William
    Thakur, Rajeev
    [J]. PARALLEL COMPUTING, 2007, 33 (09) : 595 - 604
  • [2] Detection of violations to the MPI standard in hybrid OpenMP/MPI applications
    Hilbrich, Tobias
    Mueller, Matthias S.
    Krammer, Bettina
    [J]. OPENMP IN A NEW ERA OF PARALLELISM, PROCEEDINGS, 2008, 5004 : 26 - +
  • [3] An empirical analysis of Intel Thread Checker for detecting races in OpenMP programs
    Kim, Young-Joo
    Kim, Daeyoung
    Jun, Yong-Kee
    [J]. 7TH IEEE/ACIS INTERNATIONAL CONFERENCE ON COMPUTER AND INFORMATION SCIENCE IN CONJUNCTION WITH 2ND IEEE/ACIS INTERNATIONAL WORKSHOP ON E-ACTIVITY, PROCEEDINGS, 2008, : 409 - +
  • [4] MPI Thread-Level Checking for MPI plus OpenMP Applications
    Saillard, Emmanuelle
    Carribault, Patrick
    Barthou, Denis
    [J]. EURO-PAR 2015: PARALLEL PROCESSING, 2015, 9233 : 31 - 42
  • [5] An Approach to Selecting Thread plus Process Mixes for Hybrid MPI plus OpenMP Applications
    Gahvari, Hormozd
    Schulz, Martin
    Yang, Ulrike Meier
    [J]. 2015 IEEE INTERNATIONAL CONFERENCE ON CLUSTER COMPUTING - CLUSTER 2015, 2015, : 418 - 427
  • [6] Parallel programming for OSEM reconstruction with MPI, OpenMP, and hybrid MPI-OpenMP
    Jones, MD
    Yao, RT
    [J]. 2004 IEEE NUCLEAR SCIENCE SYMPOSIUM CONFERENCE RECORD, VOLS 1-7, 2004, : 3036 - 3042
  • [7] An integrated performance visualizer for MPI/OpenMP programs
    Hoeflinger, J
    Kuhn, B
    Nagel, W
    Petersen, P
    Rajic, H
    Shah, S
    Vetter, J
    Voss, M
    Woo, R
    [J]. OPENMP SHARED MEMORY PARALLEL PROGRAMMING, PROCEEDINGS, 2001, 2104 : 40 - 52
  • [8] Predicting Software Defects in Hybrid MPI and OpenMP Parallel Programs Using Machine Learning
    Althiban, Amani S.
    Alharbi, Hajar M.
    Al Khuzayem, Lama A.
    Eassa, Fathy Elbouraey
    [J]. ELECTRONICS, 2024, 13 (01)
  • [9] Thread-Local Storage Extension to Support Thread-Based MPI/OpenMP Applications
    Carribault, Patrick
    Perache, Marc
    Jourdren, Herve
    [J]. OPENMP IN THE PETASCALE ERA, (IWOMP 2011), 2011, 6665 : 80 - 93
  • [10] Hybrid OpenMP/MPI anisotropic mesh smoothing
    Gorman, G. J.
    Southern, J.
    Farrell, P. E.
    Piggott, M. D.
    Rokos, G.
    Kelly, P. H. J.
    [J]. PROCEEDINGS OF THE INTERNATIONAL CONFERENCE ON COMPUTATIONAL SCIENCE, ICCS 2012, 2012, 9 : 1513 - 1522