π€ AI Summary
Existing open-source GPU architectures lack compiler frameworks that efficiently support the SIMT programming model, resulting in high cost and long cycles for porting and optimizing legacy GPU applications. This paper introduces VOLTβthe first modular compiler framework designed specifically for open-source GPUs. VOLT adopts a layered architecture that centralizes SIMT-specific analysis and optimizations in the middle-end, significantly enhancing reusability and extensibility across diverse instruction set architectures (ISAs) and runtime APIs. The framework supports multiple frontend languages, multi-level optimizations, and open hardware platforms (e.g., Vortex), while providing full SIMT semantic correctness. Experimental evaluation demonstrates VOLTβs strong practicality and flexibility in two critical dimensions: ISA extension and host runtime interface adaptation. By enabling efficient, portable, and maintainable GPU software development, VOLT establishes foundational infrastructure for the open GPU ecosystem.
π Abstract
Recent efforts in open-source GPU research are opening new avenues in a domain that has long been tightly coupled with a few commercial vendors. Emerging open GPU architectures define SIMT functionality through their own ISAs, but executing existing GPU programs and optimizing performance on these ISAs relies on a compiler framework that is technically complex and often undercounted in open hardware development costs.
To address this challenge, the Vortex-Optimized Lightweight Toolchain (VOLT) has been proposed. This paper presents its design principles, overall structure, and the key compiler transformations required to support SIMT execution on Vortex. VOLT enables SIMT code generation and optimization across multiple levels of abstraction through a hierarchical design that accommodates diverse front-end languages and open GPU hardware. To ensure extensibility as GPU architectures evolve, VOLT centralizes fundamental SIMT-related analyses and optimizations in the middle-end, allowing them to be reused across front-ends and easily adapted to emerging open-GPU variants. Through two case studies on ISA extensions and host-runtime API, this paper also demonstrates how VOLT can support extensions