In plain words: They gathered 401 GitHub bug reports and studied 301 code-generation bugs in tile-based GPU programming tools, tracing to their causes, triggers, and fixes. These bugs depend on input shapes and data types and often slip past compiler tests as silently wrong answers or slowdowns.
Abstract
Tile-based programming frameworks are increasingly adopted to write high-performance GPU kernels in domains such as deep learning and scientific computing. While these frameworks enhance productivity and hardware utilization, their multi-stage compilation pipelines introduce distinct code generation bugs that are tightly coupled to input shapes, data types, and backend targets. These bugs often manifest as silent wrong results or performance issues, making them difficult to detect using existing compiler testing tools. Additionally, the unique programming conventions of tile domain-specific languages complicate root cause identification, while fixing such bugs demands specialized knowledge of tile abstractions and compilation pipelines. Despite the growing adoption of tile-based systems, their code generation bugs remain largely unexplored. This paper presents the first systematic study of tile-program code generation bugs. We curate 401 bug reports from GitHub and identify 301 tile-program codegen bugs for analysis, characterizing their root causes and symptoms, the input patterns that trigger them, the test oracles that detect them, and the strategies for fixing these bugs. Our study provides foundational insights for building debugging, testing, and repair tools tailored to tile-based compiler infrastructures.
Ravishka Rathnasuriya, Zihe Song, Nidhi Majoju, Aaryaa Moharir, Tingxi Li, Wei Yang, Tao Xie
arXiv:2605.19652 · cs.SE · submitted May 19, 2026 · updated Jul 29, 2026
abstract · pdf · html · In Proceedings of the 35th ACM SIGSOFT International Symposium on Software Testing and Analysis (ISSTA 2026)