Algorithmic Profiling

Algorithmic Profiling
Related tools & artifacts:
Conference Paper: PLDI'12, June, 2012

Traditional profilers identify where a program spends most of its resources. They do not provide information about why the program spends those resources or about how resource consumption would change for different program inputs. In this paper we introduce the idea of algorithmic profiling. While a traditional profiler determines a set of measured cost values, an algorithmic profiler determines a cost function. It does that by automatically determining the "inputs" of a program, by measuring the program's "cost" for any given input, and by inferring an empirical cost function.

@inproceedings{Zaparanuks:2012:AP:2254064.2254074, author = {Zaparanuks, Dmitrijs and Hauswirth, Matthias}, title = {Algorithmic profiling}, booktitle = {Proceedings of the 33rd ACM SIGPLAN conference on Programming Language Design and Implementation}, series = {PLDI '12}, year = {2012}, isbn = {978-1-4503-1205-9}, location = {Beijing, China}, pages = {67--76}, numpages = {10}, url = {http://doi.acm.org/10.1145/2254064.2254074}, doi = {10.1145/2254064.2254074}, acmid = {2254074}, publisher = {ACM}, address = {New York, NY, USA}, keywords = {algorithmic complexity, algorithmic profiling}, }