AvA: Accelerated Virtualization of Accelerators

AvA: Accelerated Virtualization of Accelerators
复制标题

DOI:
10.1145/3373376.3378466
复制
发表时间:
2020-03
期刊:
Proceedings of the Twenty-Fifth International Conference on Architectural Support for Programming Languages and Operating Systems
影响因子:
--
通讯作者:
Hangchen Yu;A. Peters;Amogh Akshintala;C. Rossbach
Hangchen Yu;A. Peters;Amogh Akshintala;C. Rossbach
中科院分区:
其他
文献类型:
--
作者:
Hangchen Yu;A. Peters;Amogh Akshintala;C. Rossbach

文献摘要

被引文献

相似文献

应用程序正在迁移到云,而摩尔法律之后,诸如GPU,TPU和FPGA等加速器会扩散。这些趋势处于冲突状态:云应用程序在虚拟平台上运行,但是现有的虚拟化技术尚未为加速器提供生产的解决方案。结果,云提供商通过将物理设备专用于单个客人来暴露加速器。结果丢失了多租户和合并。我们提出AVA,该AVA通过自动化管理机管管理程序管理的虚拟加速器堆栈的自动构造来解决现有虚拟化技术的局限性。 AVA结合了DSL,用于描述API和共享策略,设备不合时宜的运行时组件以及编译器,以生成特定于加速器的组件,例如访客库和API服务器。 AVA使用操纵裤插入远程加速度(HIRA),这是一种新技术,可以从规范中实现共享政策的执行。我们使用AVA虚拟化九个加速器和11个框架API,其中包括以前没有探索过虚拟化支持的六个。 AVA提供了近乎本地的性能,并可以执行当前技术不可能的共享政策,而开发人员的工作量少于手工建造的虚拟化支持所需的数量级。
Applications are migrating en masse to the cloud, while accelerators such as GPUs, TPUs, and FPGAs proliferate in the wake of Moore's Law. These trends are in conflict: cloud applications run on virtual platforms, but existing virtualization techniques have not provided production-ready solutions for accelerators. As a result, cloud providers expose accelerators by dedicating physical devices to individual guests. Multi-tenancy and consolidation are lost as a consequence. We present AvA, which addresses limitations of existing virtualization techniques with automated construction of hypervisor-managed virtual accelerator stacks. AvA combines a DSL for describing APIs and sharing policies, device-agnostic runtime components, and a compiler to generate accelerator-specific components such as guest libraries and API servers. AvA uses Hypervisor Interposed Remote Acceleration (HIRA), a new technique to enable hypervisor-enforcement of sharing policies from the specification. We use AvA to virtualize nine accelerators and eleven framework APIs, including six for which no virtualization support has been previously explored. AvA provides near-native performance and can enforce sharing policies that are not possible with current techniques, with orders of magnitude less developer effort than required for hand-built virtualization support.