Overall Objectives
Research Program
Application Domains
New Software and Platforms
New Results
Bilateral Contracts and Grants with Industry
Partnerships and Cooperations
XML PDF e-pub
PDF e-Pub

Section: New Software and Platforms

The klang-omp OpenMP compiler

Klang-Omp is a C and C++ source-to-source OpenMP compiler based on LLVM framework and on Intel’s Clang-OMP front-end. It translates OpenMP directives into calls to task-based runtime system APIs. Klang-Omp currently targets both the StarPU runtime and the Kaapi runtime. The compiler supports independent tasks as defined by the 3.1 revision of the OpenMP specification as well as dependent tasks introduced with OpenMP 4. It also has been extended to support the omp target construct, making OpenMP applications able to offload computation to accelerators. This support also relies on the StarPU and XKaapi accelerator support capabilities. This work has been funded by the KSTAR Inria ADT project, involving the AVALON, STORM, MOAIS and CORSE Inria team. While the KSTAR project will end in January 2016, the klang-omp compiler will still be maintained and extended to support future OpenMP-oriented research actions, such as the ones promoted by the HEAVEN Persyval project.