Understanding Bugs in Multi-Language Deep Learning Frameworks
Deep learning frameworks (DLFs) have been playing an increasingly important role in this intelligence age since they act as a basic infrastructure for an increasingly wide range of AIbased applications. Meanwhile, as multi-programming-language (MPL) software systems, DLFs are inevitably suffering from bugs caused by the use of multiple programming languages (PLs). Hence, it is of paramount significance to understand the bugs (especially the bugs involving multiple PLs, i.e., MPL bugs) of DLFs, which can provide a foundation for preventing, detecting, and resolving bugs in the development of DLFs. To this end, we manually analyzed 1497 bugs in three MPL DLFs, namely MXNet, PyTorch, and TensorFlow. First, we classified bugs in these DLFs into 12 types (e.g., algorithm design bugs and memory bugs) according to their bug labels and characteristics. Second, we further explored the impacts of different bug types on the development of DLFs, and found that deployment bugs and memory bugs negatively impact the development of DLFs in different aspects the most. Third, we found that 28.6%, 31.4%, and 16.0% of bugs in MXNet, PyTorch, and TensorFlow are MPL bugs, respectively; the PL combination of Python and C/C++ is most used in fixing more than 92% MPL bugs in all DLFs. Finally, the code change complexity of MPL bug fixes is significantly greater than that of single-programming-language (SPL) bug fixes in all the three DLFs, while in PyTorch MPL bug fixes have longer open time and greater communication complexity than SPL bug fixes. These results provide insights for bug management in DLFs.
Tue 16 MayDisplayed time zone: Hobart change
15:45 - 17:15 | Bugs and Machine Learning / Steering Committee Meeting / ClosingResearch / Journal First / Closing at Meeting Room 106 Chair(s): Banani Roy University of Saskatchewan | ||
15:45 9mFull-paper | Mitigating the Effect of Class Imbalance in Fault Localization Using Context-aware Generative Adversarial Network Research Yan Lei Chongqing University, Tiantian Wen , Huan Xie , Lingfeng Fu Chongqing University, Chunyan Liu Chongqing University, Lei Xu Haier Smart Home Co., Ltd., Hongxia Sun Qingdao Haidacheng Purchasing Service Co., Ltd. Pre-print Media Attached | ||
15:54 9mFull-paper | Still Confusing for Bug-Component Triaging? Deep Feature Learning and Ensemble Setting to Rescue Research Yanqi Su Australian National University, Zheming Han , Zhipeng Gao Shanghai Institute for Advanced Study of Zhejiang University, Zhenchang Xing , Qinghua Lu CSIRO’s Data61, Xiwei (Sherry) Xu CSIRO’s Data61 | ||
16:03 9mFull-paper | Understanding Bugs in Multi-Language Deep Learning Frameworks Research Zengyang Li Central China Normal University, Sicheng Wang Central China Normal University, Wenshuo Wang , Peng Liang Wuhan University, China, Ran Mo Central China Normal University, Bing Li Wuhan University Link to publication Pre-print Media Attached | ||
16:12 9mFull-paper | FVA: Assessing Function-Level Vulnerability by Integrating Flow-Sensitive Structure and Code Statement Semantic Research Chao Ni Zhejiang University, Liyu Shen Zhejiang University, Wei Wang Zhejiang University, Xiang Chen Nantong University, Xin Yin The State Key Laboratory of Blockchain and Data Security, Zhejiang University, Lexiao Zhang School of Software Technology, Zhejiang University | ||
16:21 9mTalk | Event-Aware Precise Dynamic Slicing for Automatic Debugging of Android Applications Journal First Hsu Myat Win University of Technology Sydney (UTS), Shin Hwei Tan Southern University of Science and Technology, Yulei Sui University of New South Wales, Sydney Link to publication | ||
16:30 15mPanel | Discussion 8 Closing | ||
16:45 30mMeeting | Steering Committee Meeting and Closing Closing Alexander Serebrenik Eindhoven University of Technology, Igor Steinmacher Northern Arizona University |