TorchProbe: Fuzzing Dynamic Deep Learning Compilers
Static and dynamic computational graphs represent two distinct approaches to constructing deep learning frameworks. The former prioritizes compiler-based optimizations, while the latter focuses on programmability and user-friendliness. The recent release of PyTorch 2.0, which supports compiling arbitrary deep learning programs in Python, signifies a new direction in the evolution of deep learning infrastructure to incorporate compiler techniques in a more dynamic manner and support more dynamic language features like dynamic control flows and closures. Given PyTorch’s seamless integration with Python, its compiler aims to support arbitrary deep learning code written in Python. However, the inherent dynamism of Python poses challenges to the completeness and robustness of the compiler. While recent research has introduced fuzzing to test deep learning compilers, there is still a lack of comprehensive analysis on how to test dynamic features. To address this issue, we propose several code transformations to generate test cases involving dynamic features. These transformations preserve the program’s semantics, ensuring that any discrepancy between the transformed and original programs indicates the presence of a bug. Through our approach, we have successfully identified twenty previously unknown bugs in the PyTorch compiler and its underlying tensor compiler Triton.
Wed 29 NovDisplayed time zone: Beijing, Chongqing, Hong Kong, Urumqi change
10:30 - 12:00 | |||
10:30 30mTalk | Incorrectness Proofs for Object-Oriented Programs via Subclass Reflection APLAS 2023 Wenhua Li National University of Singapore, Quang Loc Le University College London, Yahui Song , Wei-Ngan Chin National University of Singapore | ||
11:00 30mTalk | m-CFA Exhibits Perfect Stack Precision APLAS 2023 Kimball Germane Brigham Young University | ||
11:30 30mTalk | TorchProbe: Fuzzing Dynamic Deep Learning Compilers APLAS 2023 Qidong Su University of Toronto / Vector Institute, Chuqin Geng McGill University, Gennady Pekhimenko University of Toronto / Vector Institute, Xujie Si University of Toronto |