Static validation of barriers and worksharing constructs in OpenMP applications

E. Saillard, P. Carribault, D. Barthou

Research output: Contribution to journalArticlepeer-review

Abstract

The OpenMP specification requires that all threads in a team execute the same sequence of worksharing and barrier regions. An improper use of such directive may lead to deadlocks. In this paper we propose a static analysis to ensure this property is verified. The well-defined semantic of OpenMP programs makes compiler analysis more effective. We propose a new compile-time method to identify in OpenMP codes the potential improper uses of barriers and worksharing constructs, and the execution paths that are responsible for these issues. We implemented our method in a GCC compiler plugin and show the small impact of our analysis on performance for NAS-OMP benchmarks and a test case for a production industrial code.

Original languageEnglish
Pages (from-to)73-86
Number of pages14
JournalLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume8766
DOIs
Publication statusPublished - 1 Jan 2014
Externally publishedYes

Fingerprint

Dive into the research topics of 'Static validation of barriers and worksharing constructs in OpenMP applications'. Together they form a unique fingerprint.

Cite this