一句话:提出Harmonia统一框架,以平台适配层和模块化shell实现云中跨厂商异构FPGA加速的可移植部署与开发简化。
云中FPGA日益异构,传统同构shell-role架构难以移植:既有方案或只支持同构FPGA,或仅部分解决role可移植,仍需大量shell开发与临时软件修改。Harmonia提出统一框架,分为平台相关层与平台无关层,利用自动化平台适配器和轻量接口包装器屏蔽硬件差异,并以可复用构建块和分层裁剪构建模块化shell,为不同role提供资源高效、易用的shell,同时用命令式接口减少跨平台软件修改。系统已在抖音部署多年,降低shell开发量69%-93%,简化配置且开销<0.63%;与其他框架相比支持跨厂商FPGA,资源消耗降低3.5%-14.9%,软件配置简化15-23倍,性能相当。
FPGAs are gaining popularity in the cloud as accelerators for various applications. To make FPGAs more accessible for users and streamline system management, cloud providers have widely adopted the shell-role architecture on their homogeneous FPGA servers. However, the increasing heterogeneity of cloud FPGAs poses new challenges for this architecture. Previous studies either focus on homogeneous FPGAs or only partially address the portability issues for roles, while still requiring laborious shell development for providers and ad-hoc software modifications for users. This paper presents Harmonia, a unified framework for heterogeneous FPGA acceleration in the cloud. Harmonia operates on two layers: a platform-specific layer that abstracts hardware differences and a platform-independent layer that provides a unified shell for diverse roles and host software. In detail, Harmonia provides automated platform adapters and lightweight interface wrappers to manage hardware differences. Next, it builds a modularized shell composed of Reusable Building Blocks and employs hierarchical tailoring to provide a resource-efficient and easy-to-use shell for different roles. Finally, it presents a command-based interface to minimize software modifications across distinct platforms. Harmonia has been deployed in a large service provider, Douyin, for several years. It reduces shell development workloads by 69%-93% and simplifies role and software configurations with negligible overhead (<0.63%). Compared with other frameworks, Harmonia supports cross-vendor FPGAs, reduces resource consumption by 3.5%-14.9% and simplifies software configurations by 15-23X while maintaining comparable performance.
@inproceedings{LiPWLWZNNZ0LX25,
title = {Harmonia: A Unified Framework for Heterogeneous FPGA Acceleration in the Cloud},
author = {Luyang Li and Heng Pan and Xinchen Wan and Kai Lv and Zilong Wang and Qian Zhao and Feng Ning and Qingsong Ning and Shideng Zhang and Zhenyu Li and Layong Luo and Gaogang Xie},
booktitle = {ASPLOS},
year = {2025},
doi = {10.1145/3676641.3716259}
}