An OpenCL- and HLS-based benchmark suite for reconfigurable hardware in HPC: performance evaluation and application
Creators: name: Meyer, Marius
Publisher: name: Universität Paderborn
Year: 2024

description: In den letzten Jahren haben FPGAs aufgrund ihrer hohen Leistung und Energieeffizienz vermehrt Einzug in HPC-Systeme erhalten. Fortschritte in den HLS-Werkzeugen haben die FPGA-Entwicklung zugänglicher gemacht, jedoch führen Abstraktionsebenen in HLS zu Syntheseergebnissen, die die Leistung der Anwendungen beeinträchtigen können. Ein Vergleich von FPGAs nur anhand von Hardware-Ressourcen bietet oft nur begrenzte Einblicke in die tatsächliche Anwendungsleistung. Besonders im Bereich Multi-FPGA-Systeme und Inter-FPGA-Kommunikation fehlt es an Werkzeugen, die eine umfassende, empirische Bewertung ermöglichen. Diese Arbeit entwickelt eine OpenCL-basierte, quelloffene Benchmark-Suite für Intel- und Xilinx-FPGAs, die die Kompilierung und Synthese der Benchmarks automatisiert, um die Kompatibilität mit verschiedenen Synthesewerkzeugen zu verbessern. Die Suite umfasst optimierte Implementierungen von Benchmark-Kerneln für vergleichbare Ergebnisse ohne manuelle Codeänderungen. Zudem wird die Multi-FPGA-Ausführung unterstützt, mit MPI/PCIe-basierter Inter-FPGA-Kommunikation. Sie ermöglicht die empirische Bewertung ganzer Multi-FPGA-Systeme und fördert die Weiterentwicklung von Inter-FPGA-Kommunikationsansätzen.Neben der Benchmark-Suite entwickeln wir hochskalierbare FPGA-Anwendungen, darunter eine schnelle LU-Zerlegung im HPL-Benchmark, die auf 64 FPGAs über 48 TFLOP/s erreicht. Unsere Flachwasserimplementierung auf Xilinx-FPGAs überwindet Skalierbarkeitsprobleme und zeigt lineare Skalierung auf 48 FPGAs. Die Evaluierung der Benchmark-Suite zeigt deren Wert für die Beschaffungsplanung, Systemwartung und die Verbesserung der Skalierbarkeit von Multi-FPGA-Anwendungen im HPC.
description: In recent years, FPGAs have gained attention in HPC for their high performance and energy efficiency. Advances in High-Level Synthesis (HLS) tools have made FPGA development more accessible, enabling programming in languages like OpenCL and C/C++. However, HLS introduces abstraction layers that can affect synthesis results and application performance. Comparing FPGAs solely based on hardware resources often offers limited insights into overall HLS performance. Currently, no tool supports comprehensive evaluation of FPGAs in HPC, especially regarding multi-FPGA systems and inter-FPGA communication, which is crucial for scaling FPGA-accelerated applications.This work develops an OpenCL-based, open-source benchmark suite for Intel and Xilinx FPGAs, including automated build infrastructure for improved compatibility with synthesis tools. The suite features optimized benchmark kernels for comparable results across various FPGA boards and supports multi-FPGA execution with inter-FPGA communication, utilizing MPI and PCIe. It is the first to enable the empirical evaluation of multi-FPGA systems, offering insights for acquisition planning and optimization.We also present highly scalable FPGA-accelerated applications, including an LU decomposition implementation for multi-FPGA systems achieving 48 TFLOP/s performance on 64 FPGAs. Evaluation of inter-FPGA communication using the ACCL framework and a shallow water simulation shows significant scalability improvements. Our benchmark suite proves valuable for evaluating FPGA characteristics and inter-FPGA frameworks, advancing multi-FPGA adoption in HPC.