arXivDaily arXiv每日学术速递 周一至周五更新
arXiv 2001.09990cs.DC
收藏

FOS:一个用于动态工作负载的模块化FPGA操作系统

FOS: A Modular FPGA Operating System for Dynamic Workloads

Anuj Vaishnav, Khoa Dang Pham, Joseph Powell, Dirk Koch

摘要:

随着FPGA现在被部署在云端和边缘,需要可扩展的设计方法,可以将FPGA系统的硬件和软件组件中存在的异构性结合起来。此外,这些FPGA系统需要维护和适应不断变化的工作负载,同时提高应用程序开发人员的可访问性。然而,由于系统组件之间的依赖性和缺乏标准化的抽象层,当前的FPGA系统无法实现模块化和对多租户的支持。为了解决这一问题,我们引入了一个模块化的FPGA操作系统-- FOS,它采用了模块化的FPGA开发流程,允许每个系统组件的变化和不可知的EDA工具版本,硬件和软件层的异构性。此外,为了动态地最大化用户透明的利用率,FOS采用资源弹性调度来仲裁任何类型加速器的时域和空域中的FPGA资源。我们对不同FPGA板的评估表明,FOS可以在单租户和多租户环境中提供性能改进,同时大大缩短开发时间,同时提高灵活性。

英文摘要:

With FPGAs now being deployed in the cloud and at the edge, there is a need for scalable design methods which can incorporate the heterogeneity present in the hardware and software components of FPGA systems. Moreover, these FPGA systems need to be maintainable and adaptable to changing workloads while improving accessibility for the application developers. However, current FPGA systems fail to achieve modularity and support for multi-tenancy due to dependencies between system components and lack of standardised abstraction layers. To solve this, we introduce a modular FPGA operating system -- FOS, which adopts a modular FPGA development flow to allow each system component to be changed and be agnostic to the heterogeneity of EDA tool versions, hardware and software layers. Further, to dynamically maximise the utilisation transparently from the users, FOS employs resource-elastic scheduling to arbitrate the FPGA resources in both time and spatial domain for any type of accelerators. Our evaluation on different FPGA boards shows that FOS can provide performance improvements in both single-tenant and multi-tenant environments while substantially reducing the development time and, at the same time, improving flexibility.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑