Thu 25 Mar 2021 18:30 - 19:00 at Virtual Space B - Session 13 Chair(s): Jens Lincke
Fri 26 Mar 2021 13:30 - 14:00 at Virtual Space B - Session 15 Chair(s): Stefan Marr

In recent years, heterogeneous computing has emerged as the vital way to increase computers’ performance and energy efficiency by combining diverse hardware devices, such as Graphics Processing Units (GPUs) and Field Programmable Gate Arrays (FPGAs). The rationale behind this trend is that different parts of an application can be offloaded from the main CPU to diverse devices, which can efficiently execute these parts as co-processors. FPGAs are a subset of the most widely used co-processors, typically used for accelerating specific workloads due to their flexible hardware and energy-efficient characteristics. These characteristics have made them prevalent in a broad spectrum of computing systems ranging from low-power embedded systems to high-end data centers and cloud infrastructures.

However, these hardware characteristics come at the cost of programmability. Developers who create their applications using high-level programming languages (e.g., Java, Python, etc.) are required to familiarize with a hardware description language (e.g., VHDL, Verilog) or recently heterogeneous programming models (e.g., OpenCL, HLS) in order to exploit the co-processors’ capacity and tune the performance of their applications. Currently, the above-mentioned heterogeneous programming models support exclusively the compilation from compiled languages, such as C and C++. Thus, the transparent integration of heterogeneous co-processors to the software ecosystem of managed programming languages (e.g. Java, Python) is not seamless.

In this paper we rethink the engineering trade-offs that we encountered, in terms of transparency and compilation overheads, while integrating FPGAs into high-level managed programming languages. We present a novel approach that enables runtime code specialization techniques for seamless and high-performance execution of Java programs on FPGAs. The proposed solution is prototyped in the context of the Java programming language and TornadoVM; an open-source programming framework for Java execution on heterogeneous hardware. Finally, we evaluate the proposed solution for FPGA execution against both sequential and multi-threaded Java implementations showcasing up to 224x and 19.8x performance speedups, respectively, and up to 13.82x compared to TornadoVM running on an Intel integrated GPU. We also provide a break-down analysis of the proposed compiler optimizations for FPGA execution, as a means to project their impact on the applications’ characteristics.

Conference Day
Thu 25 Mar

Displayed time zone: Belfast change

17:30 - 19:00
Session 13Research Papers at Virtual Space B
Chair(s): Jens LinckeHasso Plattner Institute, University of Potsdam, Germany
17:30
30m
Live Q&A
Interactive Music and Synchronous Reactive Programming
Research Papers
Bertrand PetitINRIA, France, Manuel SerranoInria, France
DOI Media Attached
18:00
30m
Live Q&A
Capturing High-level Nondeterminism in Concurrent Programs for Practical Concurrency Model Agnostic Record & Replay
Research Papers
Dominik AumayrJohannes Kepler University Linz, Austria, Stefan MarrUniversity of Kent, Sophie KalebaUniversity of Kent, Elisa Gonzalez BoixVrije Universiteit Brussel, Belgium, Hanspeter MössenböckJKU Linz, Austria
DOI Media Attached
18:30
30m
Live Q&A
Transparent Compiler and Runtime Specializations for Accelerating Managed Languages on FPGAs
Research Papers
Michail PapadimitriouUniversity of Manchester, UK, Juan FumeroUniversity of Manchester, UK, Athanasios StratikopoulosThe University of Manchester, Foivos S. ZakkakRed Hat, Inc., Christos KotselidisKTM Innovation / The University of Manchester
DOI Media Attached

Conference Day
Fri 26 Mar

Displayed time zone: Belfast change

13:30 - 14:30
Session 15Research Papers at Virtual Space B
Chair(s): Stefan MarrUniversity of Kent
13:30
30m
Live Q&A
Transparent Compiler and Runtime Specializations for Accelerating Managed Languages on FPGAs
Research Papers
Michail PapadimitriouUniversity of Manchester, UK, Juan FumeroUniversity of Manchester, UK, Athanasios StratikopoulosThe University of Manchester, Foivos S. ZakkakRed Hat, Inc., Christos KotselidisKTM Innovation / The University of Manchester
DOI Media Attached
14:00
30m
Live Q&A
Sub-method, partial behavioral reflection with Reflectivity: Looking back on 10 years of use
Research Papers
Steven Costiou INRIA Lille, Vincent AranegaUniversité Lille, CNRS, Centrale Lille, Inria, UMR 9189 - CRIStAL, Marcus Denker INRIA Lille
DOI Media Attached