SC23 Proceedings

The International Conference for High Performance Computing, Networking, Storage, and Analysis

Workshops Archive

Adding Microbenchmarks with SIMD Data Race to DataRaceBench


Workshop: 7th International Workshop on Software Correctness for HPC Applications (Correctness '23)

Authors: Joachim Jenke, Kaloyan Ignatov, and Simon Schwitanski (RWTH Aachen University)


Abstract: Data race detection tools should find data races not only in development builds of applications, but also in optimized production builds. An architecture-dependent optimization includes vectorization of the code. At the moment, DataRaceBench does not contain microkernels that test for data races in vectorized code. The few codes with SIMD directives are too simple, so that compilers tend to refuse vectorizing the loop. We carefully created new microkernels with and without data race that a tool will only detect if vector instructions are considered in the analysis. The new microkernels cover different vectorized memory access instructions. We used the new microkernels to verify the support for vectorized memory accesses in Intel Inspector and LLVM ThreadSanitizer. While Intel Inspector could detect all data races in the new microkernels, ThreadSanitizer could not find the data races when the code is vectorized.





Back to 7th International Workshop on Software Correctness for HPC Applications (Correctness '23) Archive Listing



Back to Full Workshop Archive Listing