Virtualizing Heterogeneous Accelerators as Persistent Threads for XR Systems-on-Chip

POSTER

Vignesh Suresh, Bakshree Mishra, Ying Jing, Shanbo Zhang, Zeran Zhu, Naiyin Jin, Charles Block, Paolo Mantovani, Davide Giri, Joseph Zuckerman, Tianyin Xu, Luca Carloni, and Sarita Adve

Systems-on-chips (SoCs) for emerging applications like extended reality (XR) are becoming increasingly heterogeneous, integrating multiple specialized hardware accelerators. In earlier work, we proposed Mozart, an SoC architecture that reduces the invocation and data-movement overheads of such systems through low-overhead shared-memory interfaces. In this work, we build on Mozart to propose Virtuoso, a virtualization interface for heterogeneous systems based on persistent threads. Virtuoso abstracts accelerators as CPU thread-like execution contexts that are programmable through shared memory, can transparently time-share accelerators, and can migrate across devices to address load imbalance. These capabilities address key needs in emerging XR SoCs, including inter-accelerator communication, multitenancy, and dynamic workload variation.

Virtualizing Heterogeneous Accelerators as Persistent Threads for XR Systems-on-Chip

Virtualizing Heterogeneous Accelerators as Persistent Threads for XR Systems-on-Chip