Browse > Article
http://dx.doi.org/10.9708/jksci.2014.19.4.017

A Post-mortem Detection Tool of First Races to Occur in Shared-Memory Programs with Nested Parallelism  

Kang, Mun-Hye (Dept. of Liberal Arts, Gyeongnam National University of Science and Technology)
Sim, Gab-Sig (Dept. of Liberal Arts, Gyeongnam National University of Science and Technology)
Abstract
Detecting data races is important for debugging shared-memory programs with nested parallelism, because races result in unintended non-deterministic executions of the program. It is especially important to detect the first occurred data races for effective debugging, because the removal of such races may make other affected races disappear or appear. Previous dynamic detection tools for first race detecting can not guarantee that detected races are unaffected races. Also, the tools does not consider the nesting levels or need support of other techniques. This paper suggests a post-mortem tool which collects candidate accesses during program execution and then detects the first races to occur on the program after execution. This technique is efficient, because it guarantees that first races reported by analyzing a nesting level are the races that occur first at the level, and does not require more analyses to the higher nesting levels than the current level.
Keywords
Shared-memory parallel programs; First-race to occur; Post-mortem;
Citations & Related Records
연도 인용수 순위
  • Reference
1 Choi, J., and S. Min, "RACE FRONTIER: Reproducing Data Races in Parallel Program Debugging," 3rd Symposium on Principles and Practice of Parallel Programming (PPoPP91), pp. 145-154, ACM, Williamsburg, Virginia, April 1991.
2 Netzer, R. H. B., and B. P. Miller, "What Are Race Conditions? Some Issues and Formalizations," Letters on ProgramLanguages and Systems, 1(1): 74-88, ACM, March 1992.
3 Wester, B., D. Devecsery and P. M. Chen, "Parallelizing Data Race Detection," The International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS), ACM, Houston, Texas, USA., March 2013.
4 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 Symposium On Software Testing and Analysis (ISSTA), ACM, Portland, Maine, July 2006.
5 Adve, S., M. Hill, B.Miller, and R. Netzer. Detecting data races on weak memory systems. In proceedings Of the Annual Int'l Symposium On computer Architecture (ISCA'91), pp. 234-243, May 1991.
6 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.
7 Ronsse, M., K. De Bosschere, "RecPlay: A Fully Integrated Practical Record/Replay System," Transacsion On Computer Systems, 17(2): 133-152, ACM, May 1999.   DOI
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, Tainan, Taiwan, Dec. 1998.
9 Ha, K., Y. Jun, and K. Yoo, "Efficient On-the-fly Detection of First Races in Nested Parallel Programs," Workshop on State-of-the-Art in Scientific Computing (PARA), pp. 75-84, Copenhagen, Denmark, June 2004.
10 Ayguade, E., M. Gonzalez, X. Martorell, and G. Jost, "Employing Nested OpenMP for the Parallelization of Multi-zone Computational Fluid Dynamics Applications," In Proceedings of the 18th Int'l Conference on Parallel and Distributed Processing Symposium (IPDPS), pp. 6-15, IEEE, April 2004.
11 Blikberg, R., and T. Sorevik, "Nested parallelism: Allocation of processors to tasks and OpenMP implementation," In Proceedings of the 2nd Int'l Conference on European Workshop on OpenMP (EWOMP), Edinburgh, Scotland, UK, Springer-Verlag, August 2000.
12 Bucker, H. M. , A. Rasch, and A. Wolf, "A Class of OpenMP Applications Involving Nested Parallelism," In Proceedings of the 19th ACM Symposium on Applied Computing (SAC), 1:220-224, Nicosia, Cyprus, New York, ACM, March pp. 14-17, 2004.
13 Chandra, R., L. Daum, D. Ko hr, D. Maydan, J. McDonald, and R. menon, Parallel Programming in OpenMP, Academic Press, 2001.
14 Jun, Y. and K. Koh, " On-the-fly Detection of Access Anomalies in Nested Parallel Loops," 3rd Workshop on Parallel and Distributed Debugging, pp. 107-117, ACM, May, 1993.
15 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.
16 M. Kang, and Y. Jun., "Efficient Verification of First Tangled Races to Occur in Programs with Nested Parallelism," In Proceedings of the ASEA 2011, CCIS 257, pp. 437-450, Springer, Heidelberg, 2011.