Browse > Article

A Detection Tool of First Races in OpenMP Programs with Directives  

Kang, Mun-Hye (경상대학교 컴퓨터과학과)
Ha, Ok-Kyoon (경상대학교 정보과학과)
Jun, Yong-Kee (경상대학교 정보과학과)
Abstract
Detecting data races is important for debugging programs with OpenMP directives, because races result in unintended non-deterministic executions of the program. It is especially important to detect the first data races to occur for effective debugging, because the removal of such races may make other affected races disappear or appear. The previous tools for race detecting can not guarantee that detected races are the first races to occur. This paper suggests a tool what detects the first races to occur on the program with nested parallelism using the two-pass on-the-fly technique. To show functionality of this tool, we empirically compare with the previous tools using a set of the synthetic programs with OpenMP directives.
Keywords
openMP program with directives; races; first races to occur; debugging tool;
Citations & Related Records
연도 인용수 순위
  • Reference
1 C. Terboven, "Comparing Intel Thread Checker and Sun Thread Analyzer," Minisymposium on Scalability and Usability of HPC Programming Tools, PARCO2007, September 2007.
2 Y. Lin, C. Terboven, D. an Mey and N. Copty, "Automatic Scoping of Variables lin Parallel Regions of an OpenMP Programs," Workshop on OpenMP Applications and Tools (WOMPAT), 2004.
3 SUN Microsystems, Inc. Sun Studio 12: Thread Analyzer User's Guide, 2007.
4 Jun, Y., and K. Koh, "On-the-fly Detection of Access Anomalies in Nested Parallel Loops," Proc. of the 3rd ACM/ONR Workshop on Parallel and Distributed Debugging, pp.107-117, ACM, San Diego, California, May 1993. Also in SIGPLAN Notices, 28(12): 107-117, ACM, Nov. 1993.
5 Dinning, A., and E. Schonberg, "An Empirical Comparison of Monitoring Algorithms for Access Anomaly Detection," 2nd Symposium on Principles and Practice of Parallel Programming (PPoPP), pp.1-10, ACM, March 1990.
6 Lamport, L., "Time, Clocks, and the Ordering of Events in Distributed System," Communication of the ACM, 21(7): 558-565, July 1978.   DOI   ScienceOn
7 Mellor-Crummey, J. M., "On-the-fly Detection of Data Races for Programs with Nested Fork-Join Parallelism," Supercomputing, pp.24-33, ACM/IEEE, Nov. 1991.
8 Bücker, H. M. , A. Rasch, and A. Wolf, "A Class of OpenMP Applications Involving Nested Parallelism," Pro. of the 19th ACM Symposium on Applied Computing (SAC), 1: 220-224, Nicosia, Cyprus, New York, ACM, March 14-17, 2004.
9 Banerjee, U., B. Bliss, Z. Ma, and P. Petersen, "A Theory of Data Race Detection," Workshop on Parallel and Distributed Systems: Testing and Debugging (PADTAD), pp. 69-78, Int'l Symp. On Software Testing and Analysis (ISSTA), ACM, Portland, Maine, July 2006.
10 Netzer, R. H. B., and B. P. Miller, "What Are Race Conditions? Some Issues and Formalizations," Letters on Prog. Lang. and Systems, 1(1): 74-88, ACM, March 1992.   DOI   ScienceOn
11 Dagum, L., and R. Menon, "OpenMP: An Industry- Standard API for Shared-Memory Programming," IEEE Computational Science & Engineering, 5(1): 46-55, IEEE, January/March 1998.   DOI   ScienceOn
12 OpenMP Architecture Review Board, "OpenMP Application Program Interface," www.openmp.org, version3.0, May 2008.
13 Ha, K., Y. Jun, and K. Yoo, "Efficient On-the-fly Detection of First Races in Nested Parallel Programs," Proc. of Workshop on State-of-the-Art in Scientific Computing (PARA), pp.75-84, Copenhagen, Denmark, June 2004.
14 Jun, Y., and K. Koh, "On-the-fly Detection of Access Anomalies in Nested Parallel Loops," Proc. of the 3rd ACM/ONR Workshop on Parallel and Distributed Debugging, pp.107-117, ACM, San Diego, California, May 1993. Also in SIGPLAN Notices, 28(12): 107-117, ACM, Nov. 1993.
15 Park, H., and Y. Jun, "Two-Pass On-the-fly Detection of the First Races in Shared-Memory Parallel Programs," Proc. of the 2nd Symp. on Parallel and Distributed Tools (SPDT), ACM, Welches, Oregon, August 1998.
16 Kim, J., and Y. Jun, "Scalable On-the-fly Detection of the First Races in Parallel Programs," Proc. of the 12nd Int'l Conf. on Supercomputing (ICS), pp. 345-352, ACM, Melbourne, Australia, July 1998.
17 Petersen, P., and S. Shah, "OpenMP Support in the Intel Thread Checker," WOMPAT 2003, pp. 1-12, June 2003.