Back to results

University of Illinois at Urbana-Champaign

Understanding and simplifying bug-inducing inputs for deep-learning compilers

Abstract

dc:description

With the recent evolution of parallel computing and compilation techniques, deep learning (DL) models have increasingly been deployed using DL compilers to achieve real-time performance in resource-constrained environments. The compiler stack is complex and initially drafted, making the debugging of DL compilers challenging, especially given the limited time and number of compiler experts available. Complicating matters further, the massive and often duplicated bug reports (e.g., fuzzing bugs) may contain obscure or even no error messages (e.g., semantic bugs) for models consisting of thousands of layers. This situation makes it extremely challenging to understand and localize compiler failures. To address this emerging challenge, we propose new techniques for automatically reducing and deduplicating DL compiler bug reports: We define the test-case reduction problem in DL compilers for general graph-level inputs and propose sub-graph minimality as the reduction target. Based on the Delta Debugging framework, we perform validity-preserving graph partitioning guided by heuristics from error-prone patterns. Using graph matching, we deduplicate test cases with graph isomorphism and expedite reductions by matching minimized graphs against incoming ones. We have integrated our techniques into a new tool, NNReduce, which is the first graph-level reducer with a sub-graph minimality guarantee, implemented for ONNX model formats. We applied NNReduce to reduce and deduplicate both fuzzer-generated and real-world bug reports, creating a new dataset for extensive evaluation. Our results show that NNReduce can reduce test cases by up to 3.14× (for fuzzing bugs) and 90.9x (for real-world bugs) smaller than the existing half-automated reduction tool, Polygraphy by NVIDIA. NNReduce also improves error-message-based deduplication by achieving up to a 2.36x smaller distinct set of bug reports.

Degree

thesis:*
Name thesis:degree_name
M.S.
Level thesis:degree_level
Thesis
Discipline thesis:degree_discipline
Computer Science
Grantor
University of Illinois at Urbana-Champaign
Year dc:date
2024

Author and committee

dc:creator, dc:contributor.*
Author dc:creator
  • Liu, Jiawei
Contributors dc:contributor
  • Zhang, Lingming

Subjects

dc:subject × 3

Rights

dc:rights
Statement dc:rights
  • Copyright 2024 Jiawei Liu
Language dc:language
en, eng

Identifiers

dc:identifier.*
Handle dc:identifier
https://hdl.handle.net/2142/124525

Chain of custody

source
Harvested from
University of Illinois - Urbana-Champaign
Base URL
www.ideals.illinois.edu/oai-pmh
Last updated
2026-07-22
Source record
OAI-PMH GetRecord
citation

Liu, Jiawei. Understanding and simplifying bug-inducing inputs for deep-learning compilers. Thesis thesis, University of Illinois at Urbana-Champaign, 2024. https://hdl.handle.net/2142/124525