Open Access. Powered by Scholars. Published by Universities.®

Physical Sciences and Mathematics Commons

Open Access. Powered by Scholars. Published by Universities.®

PDF

City University of New York (CUNY)

Publications and Research

2022

Software evolution

Articles 1 - 2 of 2

Full-Text Articles in Physical Sciences and Mathematics

Challenges In Migrating Imperative Deep Learning Programs To Graph Execution: An Empirical Study, Tatiana Castro Vélez, Raffi T. Khatchadourian, Mehdi Bagherzadeh, Anita Raja May 2022

Challenges In Migrating Imperative Deep Learning Programs To Graph Execution: An Empirical Study, Tatiana Castro Vélez, Raffi T. Khatchadourian, Mehdi Bagherzadeh, Anita Raja

Publications and Research

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 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 …


A Tool For Rejuvenating Feature Logging Levels Via Git Histories And Degree Of Interest, Yiming Tang, Allan Spektor, Raffi T. Khatchadourian, Mehdi Bagherzadeh May 2022

A Tool For Rejuvenating Feature Logging Levels Via Git Histories And Degree Of Interest, Yiming Tang, Allan Spektor, Raffi T. Khatchadourian, Mehdi Bagherzadeh

Publications and Research

Logging is a significant programming practice. Due to the highly transactional nature of modern software applications, a massive amount of logs are generated every day, which may overwhelm developers. Logging information overload can be dangerous to software applications. Using log levels, developers can print the useful information while hiding the verbose logs during software runtime. As software evolves, the log levels of logging statements associated with the surrounding software feature implementation may also need to be altered. Maintaining log levels necessitates a significant amount of manual effort. In this paper, we demonstrate an automated approach that can rejuvenate feature log …