Efficient thread labeling for on-the-fly race detection of programs with nested parallelism

8Citations
Citations of this article
1Readers
Mendeley users who have this article in their library.
Get full text

Abstract

It is quite difficult to detect data races in parallel programs, because they may lead to unintended nondeterministic executions of the program. To detect data races during an execution of program that may have nested parallelism, it is important to maintain thread information called label which is used to determine the logical concurrency between threads. Unfortunately, the previous schemes of thread labeling introduce a serious amount of overhead that includes serializing bottleneck to access centralized data structure or depends on the maximum parallelism or the depth of nested parallelism. This paper presents an efficient thread labeling, called eNR Labeling, which does not use any centralized data structure and creates thread labels on every thread operation in a constant amount of time and space even in its worst case. Furthermore, this technique allows to determine the logical concurrency between threads in a small amount of time that is proportional only to the depth of nested parallelism. Compared with three state-of-the-arts labeling schemes, our empirical results using OpenMP benchmarks show that eNR labeling reduces both time overhead by 10% and space overhead by more than 90% for on-the-fly race detection. © 2011 Springer-Verlag.

Cite

CITATION STYLE

APA

Ha, O. K., & Jun, Y. K. (2011). Efficient thread labeling for on-the-fly race detection of programs with nested parallelism. In Communications in Computer and Information Science (Vol. 257 CCIS, pp. 424–436). https://doi.org/10.1007/978-3-642-27207-3_47

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free