Skip to main content

Efficient Verification of First Tangled Races to Occur in Programs with Nested Parallelism

  • Conference paper
Software Engineering, Business Continuity, and Education (ASEA 2011)

Part of the book series: Communications in Computer and Information Science ((CCIS,volume 257))

  • 1647 Accesses

Abstract

Since data races result in unintended nondeterministic executions of the programs, detecting the races is important for debugging shared memory programs with nested parallelism. Particularly, the first races to occur in an execution of a program must be detected, because they can potentially affect other races that occur later. Previous on-the-fly techniques are inefficient or can not guarantee to verify the existence of the first tangle of data races to occur. This paper presents an efficient two-pass on-the-fly technique in such a kind of programs. This technique is still efficient with regard to the execution time and memory space by keeping a constant number of accesses involved in the first races for each shared variable during the execution. We empirically compare our technique with previous techniques using a set of synthetic programs with OpenMP directives.

This research was supported by Basic Science Research Program through the National Research Foundation of Korea (NRF) funded by the Ministry of Education, Science and Technology (2011-0026340).

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Chandra, R., Menon, R., Dagum, L., Kohr, D., Maydan, D., McDonald, D.: Parallel programming in openmp

    Google Scholar 

  2. Dagum, L., Menon, R.: Openmp: An industry-standard api for shared-memory programming. In: IEEE Computational Science, pp. 46–55. IEEE (January/March 1998)

    Google Scholar 

  3. Dinning, A., Schonberg, E.: An empirical comparison of monitoring algorithms for access anomaly detection. SIGPLAN Not. 25, 1–10 (1990)

    Article  Google Scholar 

  4. Ha, K., Jun, Y.J., Yoo, K.: Efficient on-the-fly detection of first races in nested parallel programs. In: Proc. of Workshop on State-of-the-Art in Scientific Computing, PARA 2004. LNCS, pp. 75–84 (2004)

    Google Scholar 

  5. Helmbold, D.P., McDowell, C.E.: A taxonomy of race conditions. J. Parallel Distrib. Comput. 33, 159–164 (1996)

    Article  Google Scholar 

  6. Jun, Y.K., Koh, K.: On-the-fly detection of access anomalies in nested parallel loops. SIGPLAN Not. 28, 107–117 (1993)

    Article  Google Scholar 

  7. Jun, Y.K., McDowell, C.E.: On-the-fly detection of the first races in programs with nested parallelism. In: 2nd Conf. on Parallel and Distributed Processing Technique and Application, CSREA, pp. 1549–1560 (1996)

    Google Scholar 

  8. Kim, J.S., Jun, Y.K.: Scalable on-the-fly detection of the first races in parallel programs. In: Proceedings of the 12th International Conference on Supercomputing, ICS 1998, pp. 345–352. ACM, New York (1998)

    Google Scholar 

  9. Lamport, L.: Ti clocks, and the ordering of events in a distributed system. Commun. ACM 21, 558–565 (1978)

    Article  MATH  Google Scholar 

  10. Mellor-Crummey, J.: On-the-fly detection of data races for programs with nested fork-join parallelism. In: Proceedings of the 1991 ACM/IEEE Conference on Supercomputing, Supercomputing 1991, pp. 24–33. ACM, New York (1991)

    Chapter  Google Scholar 

  11. Netzer, R.H.B., Miller, B.P.: What are race conditions?: Some issues and formalizations. ACM Lett. Program. Lang. Syst. 1, 74–88 (1992)

    Article  Google Scholar 

  12. Netzer, R.H.B., Miller, B.P.: Openmp architecture review board (2008)

    Google Scholar 

  13. Park, H.D., Jun, Y.K.: Two-pass on-the-fly detection of the first races in shared-memory parallel. In: Proceedings of the SIGMETRICS Symposium on Parallel and Distributed Tools, SPDT 1998, p. 158. ACM, New York (1998)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2011 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Kang, MH., Jun, YK. (2011). Efficient Verification of First Tangled Races to Occur in Programs with Nested Parallelism. In: Kim, Th., et al. Software Engineering, Business Continuity, and Education. ASEA 2011. Communications in Computer and Information Science, vol 257. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-27207-3_49

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-27207-3_49

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-27206-6

  • Online ISBN: 978-3-642-27207-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics