On-the-Fly Data Race Detection for MPI RMA Programs with MUST

被引:1
|
作者
Schwitanski, Simon [1 ]
Jenke, Joachim [1 ]
Tomski, Felix [1 ]
Terboven, Christian [1 ]
Mueller, Matthias S. [1 ]
机构
[1] Rhein Westfal TH Aachen, Chair High Performance Comp, IT Ctr, Aachen, Germany
关键词
MPI RMA; correctness; data race; MUST;
D O I
10.1109/Correctness56720.2022.00009
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
MPI Remote Memory Access (RMA) provides a one-sided communication model for MPI applications. Ensuring consistency between RMA operations with synchronization calls is a key requirement when writing correct RMA codes. Wrong API usage may lead to concurrent modifications of the same memory location without proper synchronization resulting in data races across processes. Due to their non-deterministic nature, such data races are hard to detect. This paper presents MUST-RMA, an on-the-fly data race detector for MPI RMA applications. MUST-RMA uses a race detection model based on happened-before and consistency analysis. It combines the MPI correctness tool MUST with the race detector ThreadSanitizer to detect races across processes in RMA applications. A classification quality study on MUST-RMA with different test cases shows a precision and recall of 0.95. An overhead study on a stencil and a matrix transpose kernel shows runtime slowdowns of 3x to 20x for up to 192 processes.
引用
收藏
页码:27 / 36
页数:10
相关论文
共 50 条
  • [1] Restructuring parallel programs for on-the-fly race detection
    Kim, YC
    Jun, YK
    [J]. PARALLEL COMPUTING TECHNOLOGIES, 1999, 1662 : 446 - 451
  • [2] Efficient on-the-fly data race detection in multithreaded C++ programs
    Pozniansky, E
    Schuster, A
    [J]. ACM SIGPLAN NOTICES, 2003, 38 (10) : 178 - 189
  • [3] MultiRace: efficient on-the-fly data race detection in multithreaded C++ programs
    Pozniansky, Eli
    Schuster, Assaf
    [J]. CONCURRENCY AND COMPUTATION-PRACTICE & EXPERIENCE, 2007, 19 (03): : 327 - 340
  • [4] A practical method for on-the-fly data race detection
    Ryu, EK
    Ha, KS
    Yoo, KY
    [J]. APPLIED PARALLEL COMPUTING: ADVANCED SCIENTIFIC COMPUTING, 2002, 2367 : 264 - 273
  • [5] A practical method for on-the-fly data race detection
    Ryu, EK
    Ha, KS
    Yoo, KY
    [J]. APPLIED PARALLEL COMPUTING: ADVANCED SCIENTIFIC COMPUTING, 2002, 2367 : 264 - 273
  • [6] VORD: A Versatile On-the-fly Race Detection Tool in OpenMP Programs
    Young-Joo Kim
    Sejun Song
    Yong-Kee Jun
    [J]. International Journal of Parallel Programming, 2014, 42 : 900 - 930
  • [7] Improving on-the-fly race detection for message-passing programs
    Park, Mi-Young
    Kim, Young-Cheol
    Kang, Moon-Hye
    Jun, Yong-Kee
    [J]. Advances in Computational Methods in Sciences and Engineering 2005, Vols 4 A & 4 B, 2005, 4A-4B : 449 - 454
  • [8] VORD: A Versatile On-the-fly Race Detection Tool in OpenMP Programs
    Kim, Young-Joo
    Song, Sejun
    Jun, Yong-Kee
    [J]. INTERNATIONAL JOURNAL OF PARALLEL PROGRAMMING, 2014, 42 (06) : 900 - 930
  • [9] Maintaining concurrency information for on-the-fly data race detection
    Audenaert, K
    [J]. PARALLEL COMPUTING: FUNDAMENTALS, APPLICATIONS AND NEW DIRECTIONS, 1998, 12 : 319 - 326
  • [10] TRaDe, a topological approach to on-the-fly race detection in Java']Java programs
    Christiaens, M
    De Bosschere, K
    [J]. USENIX ASSOCIATION PROCEEDINGS JAVA(TM) VIRTUAL MACHINE RESEARCH AND TECHNOLOGY SYMPOSIUM, 2001, : 105 - 116