A Practical Tool for Detecting Races in OpenMP Programs

Detecting data races or just races is important for debugging OpenMP programs, because races result in unintended nondeterministic executions of the program. The previous tool to detect the races in OpenMP programs monitors a serial execution of the program, but unfortunately cannot guarantee to verify the existence of races even in the programs only with the directives. This paper presents a practical tool which monitors a parallel execution of standard OpenMP program, and not only verifies the existence of races but also detects first races for each shared variable in the programs.

[1]  Yong-Kee Jun,et al.  Detecting the first races in parallel programs with ordered synchronization , 1998, Proceedings 1998 International Conference on Parallel and Distributed Systems (Cat. No.98TB100250).

[2]  Kern Koh,et al.  On-the-fly detection of access anomalies in nested parallel loops , 1993, PADD '93.

[3]  Yong-Kee Jun,et al.  Scalable on-the-fly detection of the first races in parallel programs , 1998, ICS '98.

[4]  Barton P. Miller,et al.  What are race conditions?: Some issues and formalizations , 1992, LOPL.

[5]  Yong-Kee Jun,et al.  Restructuring Parallel Programs for On-the-Fly Race Detection , 1999, PaCT.

[6]  L. Dagum,et al.  OpenMP: an industry standard API for shared-memory programming , 1998 .

[7]  Jong-Deok Choi,et al.  Race Frontier: reproducing data races in parallel-program debugging , 1991, PPOPP '91.

[8]  John M. Mellor-Crummey,et al.  On-the-fly detection of data races for programs with nested fork-join parallelism , 1991, Proceedings of the 1991 ACM/IEEE Conference on Supercomputing (Supercomputing '91).

[9]  Edith Schonberg,et al.  Detecting access anomalies in programs with critical sections , 1991, PADD '91.

[10]  Charles E. McDowell,et al.  On-the-fly Detection of the First Races in Programs with Nested Parallelism , 1996, PDPTA.

[11]  Charles E. McDowell,et al.  Scalable Monitoring Technique for Detecting Races in Parallel Programs , 2000, IPDPS Workshops.

[12]  So-Hee Park,et al.  A Comparison of Scalable Labeling Schemes for Detecting Races in OpenMP Programs , 2001, WOMPAT.