Unraveling Code Clone Dynamics in Deep Learning Frameworks
Maram Assi, Safwat Hassan, Ying Zou

TL;DR
This study analyzes the evolution and patterns of code clones in nine popular deep learning frameworks, revealing distinct trends and cross-framework reuse that impact software maintenance and quality.
Contribution
It provides the first comprehensive empirical analysis of code clone dynamics across multiple deep learning frameworks, highlighting cloning trends and cross-framework reuse.
Findings
DL frameworks exhibit four distinct cloning trends.
Bug fixing occurs more in the 'Serpentine' trend.
Cross-framework code clones indicate functional and architectural reuse.
Abstract
Deep Learning (DL) frameworks play a critical role in advancing artificial intelligence, and their rapid growth underscores the need for a comprehensive understanding of software quality and maintainability. DL frameworks, like other systems, are prone to code clones. Code clones refer to identical or highly similar source code fragments within the same project or even across different projects. Code cloning can have positive and negative implications for software development, influencing maintenance, readability, and bug propagation. In this paper, we aim to address the knowledge gap concerning the evolutionary dimension of code clones in DL frameworks and the extent of code reuse across these frameworks. We empirically analyze code clones in nine popular DL frameworks, i.e., TensorFlow, Paddle, PyTorch, Aesara, Ray, MXNet, Keras, Jax and BentoML, to investigate (1) the characteristics…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware System Performance and Reliability · Software Engineering Research · Software Testing and Debugging Techniques
