Tilus: A Tile-Level GPGPU Programming Language for Low-Precision Computation

Fuente: arXiv
Gespeichert in:
Bibliographische Detailangaben
Hauptverfasser: Ding, Yaoyao, Hou, Bohan, Zhang, Xiao, Lin, Allan, Chen, Tianqi, Hao, Cody Yu, Wang, Yida, Pekhimenko, Gennady
Format: Preprint
Veröffentlicht: 2025
Schlagworte:
Online-Zugang:
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
_version_ 1866909762069725184
author Ding, Yaoyao
Hou, Bohan
Zhang, Xiao
Lin, Allan
Chen, Tianqi
Hao, Cody Yu
Wang, Yida
Pekhimenko, Gennady
author_facet Ding, Yaoyao
Hou, Bohan
Zhang, Xiao
Lin, Allan
Chen, Tianqi
Hao, Cody Yu
Wang, Yida
Pekhimenko, Gennady
contents Serving Large Language Models (LLMs) is critical for AI-powered applications, yet it demands substantial computational resources, particularly in memory bandwidth and computational throughput. Low-precision computation has emerged as a key technique to improve efficiency while reducing resource consumption. Existing approaches for generating low-precision kernels are limited to weight bit widths that are powers of two and suffer from suboptimal performance because of high-level GPU programming abstractions. These abstractions restrict critical optimizations, such as fine-grained register management and optimized memory access patterns, that are essential for efficient low-precision computations. In this paper, we introduce Tilus, a domain-specific language designed for General-Purpose GPU (GPGPU) computing that supports low-precision data types with arbitrary bit widths from 1 to 8 while maintaining GPU programmability. Tilus features a thread-block-level programming model, a hierarchical memory space, a novel algebraic layout system, and extensive support for diverse low-precision data types. Tilus programs are compiled into highly efficient GPU programs through automatic vectorization and instruction selection. Extensive experiments demonstrate that Tilus efficiently supports a full spectrum of low-precision data types, and outperforms state-of-the-art low-precision kernels. Compared to existing compilers such as Triton and Ladder, as well as hand-optimized kernels such as QuantLLM and Marlin, Tilus achieves performance improvements of: $1.75\times$, $2.61\times$, $1.29\times$ and $1.03\times$, respectively. We open-source Tilus at https://github.com/NVIDIA/tilus.
format Preprint
id arxiv_https___arxiv_org_abs_2504_12984
institution arXiv
publishDate 2025
record_format arxiv
spellingShingle Tilus: A Tile-Level GPGPU Programming Language for Low-Precision Computation
Ding, Yaoyao
Hou, Bohan
Zhang, Xiao
Lin, Allan
Chen, Tianqi
Hao, Cody Yu
Wang, Yida
Pekhimenko, Gennady
Machine Learning
Artificial Intelligence
Programming Languages
Serving Large Language Models (LLMs) is critical for AI-powered applications, yet it demands substantial computational resources, particularly in memory bandwidth and computational throughput. Low-precision computation has emerged as a key technique to improve efficiency while reducing resource consumption. Existing approaches for generating low-precision kernels are limited to weight bit widths that are powers of two and suffer from suboptimal performance because of high-level GPU programming abstractions. These abstractions restrict critical optimizations, such as fine-grained register management and optimized memory access patterns, that are essential for efficient low-precision computations. In this paper, we introduce Tilus, a domain-specific language designed for General-Purpose GPU (GPGPU) computing that supports low-precision data types with arbitrary bit widths from 1 to 8 while maintaining GPU programmability. Tilus features a thread-block-level programming model, a hierarchical memory space, a novel algebraic layout system, and extensive support for diverse low-precision data types. Tilus programs are compiled into highly efficient GPU programs through automatic vectorization and instruction selection. Extensive experiments demonstrate that Tilus efficiently supports a full spectrum of low-precision data types, and outperforms state-of-the-art low-precision kernels. Compared to existing compilers such as Triton and Ladder, as well as hand-optimized kernels such as QuantLLM and Marlin, Tilus achieves performance improvements of: $1.75\times$, $2.61\times$, $1.29\times$ and $1.03\times$, respectively. We open-source Tilus at https://github.com/NVIDIA/tilus.
title Tilus: A Tile-Level GPGPU Programming Language for Low-Precision Computation
topic Machine Learning
Artificial Intelligence
Programming Languages
url https://arxiv.org/abs/2504.12984