An Empirical Study on Common Bugs in Deep Learning Compilers

被引:3
|
作者
Du, Xiaoting [1 ]
Zheng, Zheng [1 ]
Ma, Lei [2 ]
Zhao, Jianjun [3 ]
机构
[1] Beihang Univ, Beijing, Peoples R China
[2] Univ Alberta, Edmonton, AB, Canada
[3] Kyushu Univ, Fukuoka, Japan
基金
中国国家自然科学基金;
关键词
empirical study; deep learning compiler; bug; root cause; impact;
D O I
10.1109/ISSRE52982.2021.00030
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
The highly diversified deep learning (DL) frameworks and target hardware architectures bring big challenges for DL model deployment for industrial production. Up to the present, continuous efforts have been made to develop DL compilers with multiple state-of-the-arts available, e.g., TVM, Glow, nGraph, PlaidML, and Tensor Comprehensions (TC). Unlike traditional compilers, DL compilers take a DL model built by DL frameworks as input and generate optimized code as the output for a particular target device. Similar to other software, DL compilers are also error-prone. Buggy DL compilers can generate incorrect code and result in unexpected model behaviors. To better understand the current status and common bug characteristics of DL compilers, we performed a large-scale empirical study of five popular DL compilers covering TVM, Glow, nGraph, PlaidML, and TC, collecting a total of 2,717 actual bug reports submitted by users and developers. We made large manual efforts to investigate these bug reports and classified them based on their root causes, during which five root causes were identified, including environment, compatibility, memory, document, and semantic. After labeling the types of bugs, we further examined the important consequences of each type of bug and analyzed the correlation between bug types and impacts. Besides, we studied the time required to fix different types of bugs in DL compilers. Seven important findings are eventually obtained, with practical implications provided for both DL compiler developers and users.
引用
收藏
页码:184 / 195
页数:12
相关论文
共 50 条
  • [1] An Empirical Study of Bugs in WebAssembly Compilers
    Romano, Alan
    Liu, Xinyue
    Kwon, Yonghwi
    Wang, Weihang
    2021 36TH IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING ASE 2021, 2021, : 42 - 54
  • [2] On the usage and development of deep learning compilers: an empirical study on TVM
    Xiongfei Wu
    Jinqiu Yang
    Lei Ma
    Yinxing Xue
    Jianjun Zhao
    Empirical Software Engineering, 2022, 27
  • [3] On the usage and development of deep learning compilers: an empirical study on TVM
    Wu, Xiongfei
    Yang, Jinqiu
    Ma, Lei
    Xue, Yinxing
    Zhao, Jianjun
    EMPIRICAL SOFTWARE ENGINEERING, 2022, 27 (07)
  • [4] An Empirical Study on Numerical Bugs in Deep Learning Programs
    Wang, Gan
    Wang, Zan
    Chen, Junjie
    Chen, Xiang
    Yan, Ming
    PROCEEDINGS OF THE 37TH IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING, ASE 2022, 2022,
  • [5] An Empirical Study on Performance Bugs in Deep Learning Frameworks
    Makkouk, Tarek
    Kim, Dong Jae
    Chen, Tse-Hsun
    2022 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE AND EVOLUTION (ICSME 2022), 2022, : 35 - 46
  • [6] Towards enhancing the reproducibility of deep learning bugs: an empirical study
    Shah, Mehil B.
    Rahman, Mohammad Masudur
    Khomh, Foutse
    EMPIRICAL SOFTWARE ENGINEERING, 2025, 30 (01)
  • [7] Silent bugs in deep learning frameworks: an empirical study of Keras and TensorFlow
    Tambon, Florian
    Nikanjam, Amin
    An, Le
    Khomh, Foutse
    Antoniol, Giuliano
    EMPIRICAL SOFTWARE ENGINEERING, 2024, 29 (01)
  • [8] Silent bugs in deep learning frameworks: an empirical study of Keras and TensorFlow
    Florian Tambon
    Amin Nikanjam
    Le An
    Foutse Khomh
    Giuliano Antoniol
    Empirical Software Engineering, 2024, 29
  • [9] An Empirical Study of Common Challenges in Developing Deep Learning Applications
    Zhang, Tianyi
    Gao, Cuiyun
    Ma, Lei
    Lyu, Michael R.
    Kim, Miryung
    2019 IEEE 30TH INTERNATIONAL SYMPOSIUM ON SOFTWARE RELIABILITY ENGINEERING (ISSRE), 2019, : 104 - 115
  • [10] A Comprehensive Study of Deep Learning Compiler Bugs
    Shen, Qingchao
    Ma, Haoyang
    Chen, Junjie
    Tian, Yongqiang
    Cheung, Shing-Chi
    Chen, Xiang
    PROCEEDINGS OF THE 29TH ACM JOINT MEETING ON EUROPEAN SOFTWARE ENGINEERING CONFERENCE AND SYMPOSIUM ON THE FOUNDATIONS OF SOFTWARE ENGINEERING (ESEC/FSE '21), 2021, : 968 - 980