Empowering OpenMP with Automatically Generated Hardware
2016 (English)In: International Conference on Embedded Computer Systems: Architectures, MOdeling and Simulation, 2016Conference paper (Refereed)
OpenMP enables productive software development that targets shared-memory general purpose systems. However, OpenMP compilers today have little support for future heterogeneous systems – systems that will more than likely contain Field Programmable Gate Arrays (FPGAs) to compensate for the lack of parallelism available in general purpose systems. We have designed a high-level synthesis flow that automatically generates parallel hardware from unmodified OpenMP programs. The generated hardware is composed of accelerators tailored to act as hardware instances of the OpenMP task primitive. We drive decision making of complex details within accelerators through a constraint-programming model, minimizing the expected input from the (often) hardware-oblivious software developer. We evaluate our system and compare them to two state of the art architectures – the Xeon PHI and the AMD Opteron – where we find our accelerators to perform on par with the two ASIC processors.
Place, publisher, year, edition, pages
OpenMP, FPGA, High-Level Synthesis, Tasks, Reconfigurably
Research subject Computer Science
IdentifiersURN: urn:nbn:se:kth:diva-193705OAI: oai:DiVA.org:kth-193705DiVA: diva2:1033786
QC 201610102016-10-102016-10-102016-10-10Bibliographically approved