A General Framework for Static Profiling of Parametric Resource Usage
Pedro Lopez-Garcia, Maximiliano Klemen, Umer Liqat, Manuel V., Hermenegildo

TL;DR
This paper introduces a novel static profiling framework that estimates accumulated resource usage for specific program parts, aiding developers in identifying optimization targets, with implementation and experimental validation in the CiaoPP framework.
Contribution
It presents a parametric static profiling method based on cost centers and program transformation, providing detailed accumulated cost estimates for program parts.
Findings
Effective identification of high-impact program parts for optimization.
Implementation in CiaoPP demonstrates practical applicability.
Experimental results validate the accuracy of accumulated cost bounds.
Abstract
Traditional static resource analyses estimate the total resource usage of a program, without executing it. In this paper we present a novel resource analysis whose aim is instead the static profiling of accumulated cost, i.e., to discover, for selected parts of the program, an estimate or bound of the resource usage accumulated in each of those parts. Traditional resource analyses are parametric in the sense that the results can be functions on input data sizes. Our static profiling is also parametric, i.e., our accumulated cost estimates are also parameterized by input data sizes. Our proposal is based on the concept of cost centers and a program transformation that allows the static inference of functions that return bounds on these accumulated costs depending on input data sizes, for each cost center of interest. Such information is much more useful to the software developer than the…
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.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
