A Transformational Approach to Parametric Accumulated-Cost Static Profiling

Rémy Haemmerlé, Pedro López García, Umer Liqat, Maximiliano Klemen, John Patrick Gallagher, Manuel Hermenegildo

Publikation: Kapitel i bog/rapport/konferenceprocesKonferencebidrag i proceedings

Resumé

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 traditional resource usage functions, as it allows identifying the parts of a program that should be optimized, because of their greater impact on the total cost of program executions. We also report on our implementation of the proposed technique using the CiaoPP program analysis framework, and provide some experimental results.
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 traditional resource usage functions, as it allows identifying the parts of a program that should be optimized, because of their greater impact on the total cost of program executions. We also report on our implementation of the proposed technique using the CiaoPP program analysis framework, and provide some experimental results.
SprogEngelsk
TitelFunctional and Logic Programming : 13th International Symposium, (FLOPS) 2016, Kochi, Japan, March 4-6, 2016
RedaktørerOleg Kiselyov, Andy King
Udgivelses stedCham
ForlagSpringer
Dato2016
Sider163-180
ISBN (Trykt)978-3-319-29603-6
DOI
StatusUdgivet - 2016
BegivenhedThirteenth International Symposium on Functional and Logic Programming - Kochi, Japan
Varighed: 4 mar. 20166 mar. 2016
http://www.info.kochi-tech.ac.jp/FLOPS2016/

Konference

KonferenceThirteenth International Symposium on Functional and Logic Programming
LandJapan
ByKochi
Periode04/03/201606/03/2016
Internetadresse
NavnLecture Notes in Computer Science
Vol/bind9613
ISSN0302-9743

Bibliografisk note

The uploaded version is a post-peer-review, pre-copyedit version of an article published in Lecture Notes in Computer Science. The final authenticated version is available online at: http://dx.doi.org/10.1007/978-3-319-29604-3_11

Bibliografisk note

The uploaded version is a post-peer-review, pre-copyedit version of an article published in Lecture Notes in Computer Science. The final authenticated version is available online at: http://dx.doi.org/10.1007/978-3-319-29604-3_11

Emneord

    Citer dette

    Haemmerlé, R., López García, P., Liqat, U., Klemen, M., Gallagher, J. P., & Hermenegildo, M. (2016). A Transformational Approach to Parametric Accumulated-Cost Static Profiling. I O. Kiselyov, & A. King (red.), Functional and Logic Programming : 13th International Symposium, (FLOPS) 2016, Kochi, Japan, March 4-6, 2016 (s. 163-180). Cham: Springer. Lecture Notes in Computer Science, Bind. 9613, DOI: 10.1007/978-3-319-29604-3_11
    Haemmerlé, Rémy ; López García, Pedro ; Liqat, Umer ; Klemen, Maximiliano ; Gallagher, John Patrick ; Hermenegildo, Manuel. / A Transformational Approach to Parametric Accumulated-Cost Static Profiling. Functional and Logic Programming : 13th International Symposium, (FLOPS) 2016, Kochi, Japan, March 4-6, 2016. red. / Oleg Kiselyov ; Andy King. Cham : Springer, 2016. s. 163-180 (Lecture Notes in Computer Science, Bind 9613).
    @inproceedings{3f69b89c186845a894f3343472d871bf,
    title = "A Transformational Approach to Parametric Accumulated-Cost Static Profiling",
    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 traditional resource usage functions, as it allows identifying the parts of a program that should be optimized, because of their greater impact on the total cost of program executions. We also report on our implementation of the proposed technique using the CiaoPP program analysis framework, and provide some experimental results.",
    keywords = "static analysis, resource analysis",
    author = "R\{'e}my Haemmerl\{'e} and {L\{'o}pez Garc\{'i}a}, Pedro and Umer Liqat and Maximiliano Klemen and Gallagher, {John Patrick} and Manuel Hermenegildo",
    note = "The uploaded version is a post-peer-review, pre-copyedit version of an article published in Lecture Notes in Computer Science. The final authenticated version is available online at: http://dx.doi.org/10.1007/978-3-319-29604-3_11",
    year = "2016",
    doi = "10.1007/978-3-319-29604-3_11",
    language = "English",
    isbn = "978-3-319-29603-6",
    pages = "163--180",
    editor = "Oleg Kiselyov and Andy King",
    booktitle = "Functional and Logic Programming",
    publisher = "Springer",

    }

    Haemmerlé, R, López García, P, Liqat, U, Klemen, M, Gallagher, JP & Hermenegildo, M 2016, A Transformational Approach to Parametric Accumulated-Cost Static Profiling. i O Kiselyov & A King (red), Functional and Logic Programming : 13th International Symposium, (FLOPS) 2016, Kochi, Japan, March 4-6, 2016. Springer, Cham, Lecture Notes in Computer Science, bind. 9613, s. 163-180, Kochi, Japan, 04/03/2016. DOI: 10.1007/978-3-319-29604-3_11

    A Transformational Approach to Parametric Accumulated-Cost Static Profiling. / Haemmerlé, Rémy; López García, Pedro; Liqat, Umer; Klemen, Maximiliano; Gallagher, John Patrick; Hermenegildo, Manuel.

    Functional and Logic Programming : 13th International Symposium, (FLOPS) 2016, Kochi, Japan, March 4-6, 2016. red. / Oleg Kiselyov; Andy King. Cham : Springer, 2016. s. 163-180.

    Publikation: Kapitel i bog/rapport/konferenceprocesKonferencebidrag i proceedings

    TY - GEN

    T1 - A Transformational Approach to Parametric Accumulated-Cost Static Profiling

    AU - Haemmerlé,Rémy

    AU - López García,Pedro

    AU - Liqat,Umer

    AU - Klemen,Maximiliano

    AU - Gallagher,John Patrick

    AU - Hermenegildo,Manuel

    N1 - The uploaded version is a post-peer-review, pre-copyedit version of an article published in Lecture Notes in Computer Science. The final authenticated version is available online at: http://dx.doi.org/10.1007/978-3-319-29604-3_11

    PY - 2016

    Y1 - 2016

    N2 - 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 traditional resource usage functions, as it allows identifying the parts of a program that should be optimized, because of their greater impact on the total cost of program executions. We also report on our implementation of the proposed technique using the CiaoPP program analysis framework, and provide some experimental results.

    AB - 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 traditional resource usage functions, as it allows identifying the parts of a program that should be optimized, because of their greater impact on the total cost of program executions. We also report on our implementation of the proposed technique using the CiaoPP program analysis framework, and provide some experimental results.

    KW - static analysis

    KW - resource analysis

    U2 - 10.1007/978-3-319-29604-3_11

    DO - 10.1007/978-3-319-29604-3_11

    M3 - Article in proceedings

    SN - 978-3-319-29603-6

    SP - 163

    EP - 180

    BT - Functional and Logic Programming

    PB - Springer

    CY - Cham

    ER -

    Haemmerlé R, López García P, Liqat U, Klemen M, Gallagher JP, Hermenegildo M. A Transformational Approach to Parametric Accumulated-Cost Static Profiling. I Kiselyov O, King A, red., Functional and Logic Programming : 13th International Symposium, (FLOPS) 2016, Kochi, Japan, March 4-6, 2016. Cham: Springer. 2016. s. 163-180. (Lecture Notes in Computer Science, Bind 9613). Tilgængelig fra, DOI: 10.1007/978-3-319-29604-3_11