High-performance computing (HPC) is an important component of Europe’s innovation capacity and is also seen as a building block in the digitization of European industry. Reconfigurable technologies such as Field Programmable Gate Array (FPGA) modules are becoming increasingly important here because of their energy efficiency, performance and flexibility.
There is also an increasing focus on HPC systems with heterogeneous architectures, including those with FPGA accelerators. The great flexibility of these FPGAs makes it possible to realize a large class of HPC applications with FPGAs. However, their programming has so far been mainly reserved for specialists and is very time-consuming, making their use in areas of scientific supercomputing still rare.
In the HPC environment there are various programming models for heterogeneous computer systems with some types of accelerators. Common programming models are for example OpenCL (opencl.org), OpenACC (openacc.org) and OpenMP (OpenMP.org). However, a productive usability of these standards for FPGAs is not yet given today.
The goals of the ORKA project are:
- Use of the OpenMP 4.0 standard as a programming model, in order to open up heterogeneous computer platforms with FPGAs as reconfigurable architectures to a broader community in the HPC environment by means of portable implementations without special knowledge.
- Design and implementation of a source-to-source framework that transforms C/C++ code with OpenMP 4.0 directives into an executable program that uses the host CPUs and FPGAs
- Use and extension of existing solutions of sub-problems for the optimal mapping of algorithms to heterogeneous systems and FPGA hardware.
- Exploration of new (possibly heuristic) methods to optimize programs for inherently parallel architectures.
- Chair for Programming Systems (FAU)
- Universität zu Köln
- Frauenhofer SCAI
- Konrad-Zuse-Zentrum für Informationstechnik Berlin (ZIB)