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

Yaoyao Ding, Bohan Hou, Xiao Zhang, Allan Lin, Tianqi Chen +3 more
4/17/2025
cs.LGcs.AIcs.PL

Official code: NVIDIA/tilus (489 stars, Apache-2.0, last commit 2026-04-27).

Abstract

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.

View on arXivView PDF

Code Implementations(1)

NVIDIA/tilusOfficial100%
Apache-2.0

Tilus is a tile-level kernel programming language with explicit control over shared memory and registers.

48929C, C++Aug 1, 20255 months agoApache-2.0
cudakernelprogrammingtile

Cite this paper

@article{ding2025tilus,
  title  = {Tilus: A Tile-Level GPGPU Programming Language for Low-Precision Computation},
  author = {Yaoyao Ding and Bohan Hou and Xiao Zhang and Allan Lin and Tianqi Chen and Cody Yu Hao and Yida Wang and Gennady Pekhimenko},
  year   = {2025},
  eprint = {2504.12984},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2504.12984v3}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2504.12984.svg)](https://codeofpaper.com/paper/2504.12984)

Discussion