Project Details
Projekt Print View

Perf4JS: Automatically Fixing Performance Problems in Real-World JavaScript Applications

Subject Area Software Engineering and Programming Languages
Term from 2017 to 2021
Project identifier Deutsche Forschungsgemeinschaft (DFG) - Project number 383433544
 
As dynamic languages, e.g., JavaScript, are becoming more and more prevalent, the performance of applications written in these languages is crucial to ensure responsiveness, high throughput, and energy-efficiency. Unfortunately, finding and optimizing performance bottlenecks currently is a mostly manual and time-consuming process performed by few expert developers. The reason is that existing program analysis techniques for dynamic languages suffer from fundamental limitations that prevent tools from automating effective code optimizations. The proposed project will research novel program analysis and refactoring techniques that address the specific needs of highly dynamic languages. We expect these fundamentally new techniques to enable a wide range of applications across multiple domains, languages, and software quality goals. As a specific application, the proposal focuses on automatically improving the performance of real-world JavaScript applications. To this end, we will develop approaches that help developers to detect optimization opportunities, refactor them by replacing inefficient with efficient code, and by reliably and realistically measuring the effect on performance. We envision that the planned work has a significant impact on the thriving research fields of program analysis and performance analysis.
DFG Programme Research Grants
 
 

Additional Information

Textvergrößerung und Kontrastanpassung