mlsanityData to 7 Oct 2026

Challenges in Migrating Imperative Deep Learning Programs to Graph Execution: An Empirical Study

arXiv 2201.09953 ↗First posted 24 Jan 2022cs.SE cs.LG cs.PLcited by 2

Not on the map. Why?

Abstract (arXiv)

Efficiency is essential to support responsiveness w.r.t. ever-growing datasets, especially for Deep Learning (DL) systems. DL frameworks have traditionally embraced deferred execution-style DL code that supports symbolic, graph-based Deep Neural Network (DNN) computation. While scalable, such development tends to produce DL code that is error-prone, non-intuitive, and difficult to debug. Consequently, more natural, less error-prone imperative DL frameworks encouraging eager execution have emerged but at the expense of run-time performance. While hybrid approaches aim for the "best of both worlds," the challenges in applying them in the real world are largely unknown. We conduct a data-driven analysis of challenges -- and resultant bugs -- involved in writing reliable yet performant imperative DL code by studying 250 open-source projects, consisting of 19.7 MLOC, along with 470 and 446 manually examined code patches and bug reports, respectively. The results indicate that hybridization: (i) is prone to API misuse, (ii) can result in performance degradation -- the opposite of its intention, and (iii) has limited application due to execution mode incompatibility. We put forth several recommendations, best practices, and anti-patterns for effectively hybridizing imperative DL code, potentially benefiting DL practitioners, API designers, tool developers, and educators.

Key facts. Cited by 2 papers in the map (data through 7 Oct 2026). Builds on 19 of its 110 references that are in the map. First posted on arXiv 24 Jan 2022.

Builds on

19 of 110 references.

References · 19

  1. 2019PyTorch: An Imperative Style, High-Performance Deep Learning Librarycited by 20,160
  2. 2015MXNet: A Flexible and Efficient Machine Learning Library for Heterogeneous Distributed Systemscited by 195
  3. 2019Taxonomy of Real Faults in Deep Learning Systemscited by 90
  4. 2019A Comprehensive Study on Deep Learning Bug Characteristicscited by 65
  5. 2018Software Engineering Challenges of Deep Learningcited by 41
  6. 2020Repairing Deep Neural Networks: Fix Patterns and Challengescited by 33
  7. 2021Silent Bugs in Deep Learning Frameworks: An Empirical Study of Keras and TensorFlowcited by 25
  8. 2019TensorFlow Eager: A Multi-Stage, Python-Embedded DSL for Machine Learningcited by 22
  9. 2021An Empirical Study on Deployment Faults of Deep Learning Based Mobile Applicationscited by 20
  10. 2019What Do Developers Ask About ML Libraries? A Large-scale Study Using Stack Overflowcited by 13
  11. 2021Design Smells in Deep Learning Programs: An Empirical Studycited by 10
  12. 2018AutoGraph: Imperative-style Coding with Graph-based Performancecited by 9
7 more
  1. 2019Analysis and Detection of Information Types of Open Source Software Issue Discussionscited by 9
  2. 2020Documentation of Machine Learning Softwarecited by 8
  3. 2020ArguLens: Anatomy of Community Opinions On Usability Issues Using Argumentation Modelscited by 2
  4. 2021Mining Software Repositories with a Collaborative Heuristic Repositorycited by 2
  5. 2018Proactive Empirical Assessment of New Language Feature Adoption via Automated Refactoring: The Case of Java 8 Default Methodscited by 1
  6. 2020A Deep Dive on the Impact of COVID-19 in Software Developmentcited by 1
  7. 2021Automated Evolution of Feature Logging Statement Levels Using Git Histories and Degree of Interestcited by 1

Built on by

Cited by year

Citing papers per year: 2024: 1; 2025: 1.

2 papers.