Browse > Article

Efficient On-the-fly Detection of First Races in Shared-Memory Programs with Nested Parallelism  

하금숙 (구미1대학 컴퓨터전공)
전용기 (경상대학교 컴퓨터과학과)
유기영 (경북대학교 컴퓨터공학과)
Abstract
For debugging effectively the shared-memory programs with nested parallelism, it is important to detect efficiently the first races which incur non-deterministic executions of the programs. Previous on-the-fly technique detects the first races in two passes, and shows inefficiencies both in execution time and memory space because the size of an access history for each shared variable depends on the maximum parallelism of program. This paper proposes a new on-the-fly technique to detect the first races in two passes, which is constant in both the number of event comparisons and the space complexity on each access to shared variable because the size of an access history for each shared variable is a small constant. This technique therefore makes on-the-fly race detection more efficient and practical for debugging shared-memory programs with nested parallelism.
Keywords
on-the-fly detection of first races; nested parallelism; efficiency; constant complexity;
Citations & Related Records
연도 인용수 순위
  • Reference
1 Netzer R. H. B., and B. P. Miller, 'What are Race Conditions? Some Issues and Formalizations,' Letters on Programming Lang. and Systems, 1(1):74-88, ACM, 1992   DOI
2 Jun Y., and C. E. McDowell, 'On the fly Detection of the First Races in Programs with Nested Parallelism,' 2nd Int'l Conf. on Parallel and Distributed Processing Techniques and Applications, pp. 1549-1560, CSREA, 1996
3 Kim J., and Y. Jun, 'Scalable On the fly Detection of the First Races in Parallel Programs,' 12nd Int'l Conf. on Super computing, pp. 345-352, ACM, 1998   DOI
4 Ronsse M., and K. De Bosschere, 'ReePlay: A Fully Integrated Practical Record/Replay System,' Tr. on Computer Systems, 17(2): 133-152, ACM, May 1999   DOI
5 Choi J., and S. Min. 'Race Frontier Reproducing Data Races in Parallel Program Debugging,' 3rd Symp. On Principles and Practice of Parallel Programming, pp. 145-154, ACM, 1991   DOI
6 Jun Y., and K. Koh, 'On the fly Detection of Access Anomalies Nested Parallel Loops,' 3rd Workshop on Parallel and Distributed Debugging, pp. 107-117. ACM, 1993   DOI
7 Leslie Lamport, 'Times, Clocks, and the Ordering of Events in Distributed System,' Comm. of the ACM, 21(7): 558-565, ACM, July 1978   DOI   ScienceOn
8 Park H., and Y. Jun, 'Detecting the First Races in Parallel Programs with Ordered Synchronization,' 6th Int'l Conf. on Parallel and Distributed Systems, pp. 201-208, IEEE, 1998   DOI
9 Kim J., D. Kim, and Y. Jun, 'Scalable Visualization for Debugging Races in OpenMP Programs,' 3rd Int'l Conf. on Communications in Computing, pp. 259-265, Las Vegas, Nevada, World Academy of Science, June 2002
10 Netzer R. H. B., and Miller B. P., 'Improving the Accuracy of Data Race Detection,' 3rd Symp. on Principles and Practice of Parallel Programming, pp. 133-144, ACM, 1991   DOI
11 Mellor Crummey J., 'On the fly Detection of Data Races for Program with Nested Fork-Join Parallelism,' Supercomputing, pp. 24-33, ACM/IEEE, Nov. 1991   DOI
12 Chandra R., L. Dagum, D. Kohr, D. Maydan, J. McDonald, R. Menon, Parallel Programming in openMP, Academic Press, 2001
13 OpenMP Architecture Review Board, OpenMP Fortran Application Program Interface, Ver. 2.0, Nov. 2000
14 Dinning A., and E. Schonberg, 'An Empirical Comparison of Monitoring Algorithms for Access Anomaly Detection,' 2nd Symp. on Principles and Paractice of Parallel Programming, pp. 1-10, ACM, 1990   DOI
15 Park S., M. Park, and Y. Jun, 'A Comparison of Scalable Labeling Schemes for Detecting Races in OpenMP Programs,' Int'l Workshop on OpenMP Applications and Tools, Lecture Notes in Computer Science, 2004: 68-80, Springer Verlag, OpenMP ARB, July 2001   DOI