DPUConfig: Optimizing ML Inference in FPGAs Using Reinforcement Learning
Alexandros Patras, Spyros Lalis, Christos D. Antonopoulos, Nikolaos Bellas
TL;DR
This work tackles efficient ML inference on FPGA MPSoCs by dynamically configuring Deep Learning Processing Units (DPUs) via a reinforcement learning agent. DPUConfig observes runtime telemetry and model features, selects among 26 DPU configurations, and adaptively reconfigures the FPGA to maximize energy efficiency under latency constraints, using offline PPO training with context-aware rewards. On a Xilinx ZCU102 platform, it achieves roughly $95$–$97 ext{%}$ of the optimal power-per-workload metric $PPW$ across varied models and workloads, with manageable reconfiguration overhead and most cases meeting the 30 FPS target. The results underscore the practicality of RL-driven runtime adaptation for energy-efficient, heterogeneous FPGA-based ML inference.
Abstract
Heterogeneous embedded systems, with diverse computing elements and accelerators such as FPGAs, offer a promising platform for fast and flexible ML inference, which is crucial for services such as autonomous driving and augmented reality, where delays can be costly. However, efficiently allocating computational resources for deep learning applications in FPGA-based systems is a challenging task. A Deep Learning Processor Unit (DPU) is a parameterizable FPGA-based accelerator module optimized for ML inference. It supports a wide range of ML models and can be instantiated multiple times within a single FPGA to enable concurrent execution. This paper introduces DPUConfig, a novel runtime management framework, based on a custom Reinforcement Learning (RL) agent, that dynamically selects optimal DPU configurations by leveraging real-time telemetry data monitoring, system utilization, power consumption, and application performance to inform its configuration selection decisions. The experimental evaluation demonstrates that the RL agent achieves energy efficiency 95% (on average) of the optimal attainable energy efficiency for several CNN models on the Xilinx Zynq UltraScale+ MPSoC ZCU102.
