A Preprocessor for Detecting Potential Races in Shared Memory Parallel Programs with Internal Nondeterminism


The KIPS Transactions:PartA, Vol. 17, No. 1, pp. 9-18, Feb. 2010
10.3745/KIPSTA.2010.17.1.9,   PDF Download:

Abstract

Races that occur in shared-memory parallel programs such as OpenMP programs must be detected for debugging because of causing unintended non-deterministic results. Previous works which verify the existence of these races on-the-fly are limited to the programs without internal non-determinism. But in the programs with internal non-determinism, such works need at least N! execution instances for each critical section to verify the existence of races, where N is the degree of maximum parallelism. This paper presents a preprocessor that statically analyzes the locations of non-deterministic accesses using program slicing and can detect apparent races as well as potential races through single execution using the analyzed information. The suggested tool can deterministically monitor non-deterministic accesses to occur in OpenMP programs so that this tool can verify the existence of races even if it is used any race detection protocol which can apply to programs with critical section. To prove empirically this tool, we have experimented using a set of benchmark programs such as synthetic programs that involve non-deterministic accesses, OpenMP Microbenchmark, NAS Parallel Benchmark, and OpenMP application programs.


Statistics
Show / Hide Statistics

Statistics (Cumulative Counts from September 1st, 2017)
Multiple requests among the same browser session are counted as one view.
If you mouse over a chart, the values of data points will be shown.


Cite this article
[IEEE Style]
Y. J. Kim, M. S. Jung, Y. K. Jun, "A Preprocessor for Detecting Potential Races in Shared Memory Parallel Programs with Internal Nondeterminism," The KIPS Transactions:PartA, vol. 17, no. 1, pp. 9-18, 2010. DOI: 10.3745/KIPSTA.2010.17.1.9.

[ACM Style]
Young Joo Kim, Min Sub Jung, and Yong Kee Jun. 2010. A Preprocessor for Detecting Potential Races in Shared Memory Parallel Programs with Internal Nondeterminism. The KIPS Transactions:PartA, 17, 1, (2010), 9-18. DOI: 10.3745/KIPSTA.2010.17.1.9.