PASE: Pro-Active Service Embedding in the Mobile Edge
Oleg Kolosov, Gala Yadgar, et al.
ICDCS 2023
Torch-Spyre (https://github.com/torch-spyre/torch-spyre) is an open source project that provides a PyTorch PrivateUse1 device with OpenReg, including an Inductor backend, for the IBM Spyre Accelerator. IBM Spyre is a high-performance energy-efficient AI accelerator featuring 32 AI-optimized compute cores each with on-chip interconnect and compiler-managed scratchpad memory.
Our goal in this session is to describe how we evolved the Spyre software stack to fully leverage Inductor. This enabled the elimination of a significant fraction of our proprietary compiler code base resulting in improved compilation time and operation coverage without loss of inference performance. We will highlight several technical challenges in compiling for Spyre-like accelerators and describe how we adapted and extended Inductor to tackle them. In particular, we will discuss our extensions to Inductor to support device-specific tiled Tensor memory layouts, and new compiler optimization passes for core-level work division and scratchpad management. We hope to engage the community in evolving the PyTorch ecosystem to more fully support them.
Oleg Kolosov, Gala Yadgar, et al.
ICDCS 2023
Daniele Lotito, Srikumar Venugopal, et al.
IEEE Access
Olivier Tardieu, Benjamin Herta, et al.
ACM TOPC
Olivier Tardieu, David Grove, et al.
PLDI 2023