Phaedrus: Predicting Dynamic Application Behavior with Lightweight Generative Models and LLMs

๐Ÿ“… 2024-12-09
๐Ÿ“ˆ Citations: 0
โœจ Influential: 0
๐Ÿ“„ PDF
๐Ÿค– AI Summary
Modern applications exhibit highly input-sensitive behavior, rendering conventional single-execution profiling-based performance analysis ineffective. This paper proposes a compiler-coordinated deep learning framework that, for the first time, enables cross-input dynamic function-call sequence prediction without runtime profiling. Our approach comprises two core innovations: (1) an application-behavior synthesis paradigm integrating large language models with static analysis; and (2) a generative behavioral generalization method based on compressed whole-program paths (WPP), achieving up to 10โทร— profile size reduction. The framework achieves high-accuracy call prediction within 85โ€“99% of critical execution time, enabling input-aware code optimization: binary size is reduced by 13.68% on average (up to 65%), while performance improves by 2.8% on average.

Technology Category

Application Category

๐Ÿ“ Abstract
Application profiling is an indispensable technique for many software development tasks, such as code and memory layout optimizations, where optimization decisions are tailored to specific program profiles. Unfortunately, modern applications codebases exhibit highly variant behavior across different inputs, creating challenges for conventional profiling approaches that rely on a single representative execution instance. In this paper, we propose extbf{Phaedrus}, a new extit{compiler-assisted deep learning framework} designed to predict dynamic program behaviors across varied execution instances, specifically focusing on dynamic function call prediction.Such predicted call sequences are then used for producing optimized code pertinent to a given input. Traditional profile-guided optimization methods struggle with the input-dependent variability of modern applications, where profiling on different inputs yields divergent application behaviors. To address this, Phaedrus proposes two new approaches: extit{Application Behavior Synthesis}, a profile-less approach where Large Language Models (LLMs) directly infer dynamic functions based on source code &static compiler analysis, bypassing the need for traditional profiling, and extit{Application Profile Generalization}, which uses generative models trained on compressed and augmented extit{Whole Program Path} (WPP) based function profiles to predict application behavior under unseen inputs. Our experiments show that extit{Phaedrus} can achieve upto $10^7X$ reduction in WPP function profile sizes, can predict most frequently executed functions that cover upto 85-99% of the execution time, along with an average of 13.68% (upto 65%) reduction in application binary size, and an average of 2.8% performance improvement over the traditional profile-guided optimization.
Problem

Research questions and friction points this paper is trying to address.

Predict dynamic program behaviors across varied execution instances
Address input-dependent variability in modern applications profiling
Optimize code using predicted function calls for specific inputs
Innovation

Methods, ideas, or system contributions that make the work stand out.

Compiler-assisted deep learning predicts dynamic behaviors
LLMs infer functions from source code statically
Generative models generalize profiles for unseen inputs
๐Ÿ”Ž Similar Papers
No similar papers found.
B
Bodhisatwa Chatterjee
Georgia Institute of Technology, USA
N
Neeraj Jadhav
Georgia Institute of Technology, USA
S
Sharjeel Khan
Georgia Institute of Technology, USA
Santosh Pande
Santosh Pande
Professor of Computer Science, Georgia Tech
Compilers