Browse > Article
http://dx.doi.org/10.6109/jkiice.2012.16.3.391

Loop Splitting for On-the-fly Race Detection of Sharded-memory Parallel Programs  

Song, Tae-Seob (한국국제대학교 조선해양공학과)
Abstract
Detecting races is important for debugging shared-memory parallel programs, because the races result in unintended non-deterministic executions of the programs. Previous on-the-fly techniques to detect races in parallel programs with general inter-thread coordination show serious space overhead which depends on the maximum parallelism of the program. Therefore, this paper presents a loop splitting technique for on-the-fly race detection of parallel programs which is more efficient in space complexity than previous techniques. This loop splitting technique is the debugged program which preserves semantics of the original program. Monitering loop splitting program in on-the-fly can detect first races.
Keywords
on-the-fly; race detection; debugging; loop splitting; first race;
Citations & Related Records
연도 인용수 순위
  • Reference
1 Netzer, R. H. B., B. P. Miller, "Improving the Accuracy of Data Race Detection", 3rd Symp. on Principles and Practice of Parallel Programming, pp. 133-144, ACM, April 1991.
2 Park, H., Y. Jun, "Detecting the First Races in Parallel Programs with Ordered Synchronization," 6th Intl. Conf. on Parallel and Distributed Systems, pp. 201-208, IEEE, Dec. 1998.
3 Parallel Computing Forum, PCF Parallel Fortran Extensions, Vol. 10(3), ACM, July 1991.
4 Kim, Y., and Y. Jun, "Restructuring Parallel Programs for On-the-fly Race Detection", 5th Int'l. Conf. Parallel Computing Technologies (PaCT-99), pp. 446-452, RAS, Sept. 1999.
5 Callahan, D. Kennedy K., Subhlok, J., "Analysis of Event Synchronization in a Parallel Programming Tool," 2nd Symp. on Principles and Practice of Parallel Programming, pp. 21-30, ACM, March 1990.
6 Dagum, L., and R. Menon, "OpenMP: An Industry-Standard API for Shared-Memory Programming," Computational Science and Engineering, Vol. 5(1), pp. 46-55, IEEE, Jan.-Mar. 1998.   DOI   ScienceOn
7 Kim, D., and Y. Jun, "An Effective Tool for Debugging Races in Parallel Programs," 3rd Int'l Conf. on Parallel and Distributed Processing Techniques and Applications, pp. 117-126, CSREA, June 1997.
8 Dinning, A., and E. schonberg, "An Empirical Comparison of Monitoring Algorithms for Access Anomaly Detection," 2nd Symp. on Principles and Practice of Parallel Programming, pp. 1-10, ACM, Mar. 1990.
9 Grunwald, D., H. Srinivasan, "Efficient Computation of Precedence Information in Parallel Programs," 6th Workshop on Languages and Compilers for Parallel Computing, pp. 602-616, Springer-Verlag, Aug. 1993.
10 Jun, Y., C. E. McDowell, "On-the-fly Detection of the First Races in Porgrams with Nested Parallelism," 2nd Int'l Conf. on Parallel and Distributed Processing Techniques and Applications, pp. 1549-1560, CSREA, Aug. 1996.
11 Netzer, R. H. B., S. Ghosh, "Efficient Race Condition Detection for Shared-Memory Programs with Post/Wait Synchronization", Int'l. Conf. on Parallel Processing, pp. II-242-246, Penn. State Univ., Aug. 1992.