Abstract
Detecting races is important for debugging shared-memory parallel programs, because the races result in unintended nondeterministic executions of the programs. Previous on-the-fly techniques to detect races have a bottleneck caused by the need to check or serialize all accesses to each shared variable in a program that may have nested parallelism with barrier synchronization. The new scalable monitoring technique in this paper reduces the bottleneck significantly by c necking or serializing at most 2(B + 1) non-nested accesses in an iteration for each shared variable, where B is the number of barrier operations in the iteration. This technique, therefore, makes on-the-fly race detection more scalable.
University Research Program supported by Ministry of Information and communication in South Korea.
In Gyeongsang National University, he is also involved in both In both Institute of Computer Research and Development, and Information and Communication Research Center, as a research professor.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Dinning, A., and E. Schonberg, “An Empirical Comparision of Monitoring Algorithms for Access Anomaly Detection,” 2nd Symp. on Principles and Practice of Parallel Programming, pp. 1–10, ACM, March 1990.
Jun, Y., “Improving Scalablility of On-the-fly Detection for Nested Parallelism” TR OS-9905, Dept. of Computer Science, Gyeongsang National Univ., March 1999.
Jun, Y., and C. E. McDowell, “On-the-fly Detection of the First Races in Programs with Nested Parallelism” 2nd Int. Conf. on Parallel and Distributed Processing Techniques and Applications, pp. 1549–1560, CSREA, August 1996.
Kim, D., and Y. Jun, “An Effective Tool for Debugging Races in Parallel Programs” 3rd Int. Conf. on Parallel and Distributed Processing Techniques and Applications, pp. 117–126, CSREA, July 1997.
Kim, J., and Y. Jun, “Scalable On-the-fly Detection of the First Races in Parallel Programs,” 12th Int. Conf. on Supercomputing, pp. 345–352, ACM, July 1998.
Lamport, L., “Time, Clocks, amd the Ordering of Events in Distributed System” Communications of ACM, 21(7): 558–565, ACM, July 1978.
Mellor-Crummey, J., “Compile-time Support for Efficient Data Race Detection in Shared-Memory Parallel Programs” 3rd Workshop on Parallel and Distributed Debugging, pp. 129–139, ACM, May 1993.
Min, S. L., and J. D. Choi, “An Efficient Cache-based Access Anomaly Detection Scheme” 4th Int. Conf. on Architectural Support for Programming Language and Operating Systems, pp. 235–244, ACM, April 1991.
Netzer, R. H., and B. P. Miller, “Improving the Accuracy of Data Race Detection” 3rd Symp. on Prin. and Practice of Parallel Prog., pp. 133–144, ACM, April 1991.
OpenMP Architecture Review Board, OpenMP Fortran Application Program Interface, Version 1.0, Oct. 1997.
Parallel Computing Forum, “PCF Parallel Fortran Extensions,” Fortran Forum, 10(3), ACM, Sept. 1991.
Perković, D., and P. Keleher, “Online Data-Race Detection vis Coherency Guarantees,” 2nd Usenix Symp. on Operating Systems Design and Implementation, pp. 47–58, ACM/IEEE, Oct. 1996.
Richards, B., and J. R. Larus, “Protocol-Based Data-Race Detection,” 2nd Sigmetrics Symp. on Parallel and Dist. Tools, pp. 40–47, ACM, August 1998.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2000 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Jun, YK., McDowell, C.E. (2000). Scalable Monitoring Technique for Detecting Races in Parallel Programs. In: Rolim, J. (eds) Parallel and Distributed Processing. IPDPS 2000. Lecture Notes in Computer Science, vol 1800. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45591-4_44
Download citation
DOI: https://doi.org/10.1007/3-540-45591-4_44
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-67442-9
Online ISBN: 978-3-540-45591-2
eBook Packages: Springer Book Archive