Abstract
To understand, debug, and predict the performance of complex software systems, we develop the concept of probabilistic performance annotations. In essence, we annotate components (e.g., methods) with a relation between a measurable performance metric, such as running time, and one or more features of the input or the state of that component. We use two forms of regression analysis: regression trees and mixture models. Such relations can capture non-Trivial behaviors beyond the more classic algorithmic complexity of a component. We present a method to derive such annotations automatically by generalizing observed measurements. We illustrate the use of our approach on three complex systems-The ownCloud distributed storage service; the MySQL database system; and the x264 video encoder library and application-producing non-Trivial characterizations of the performance. Notably, we isolate a performance regression and identify the root cause of a second performance bug in MySQL.
Author supplied keywords
Cite
CITATION STYLE
Rogora, D., Carzaniga, A., Diwan, A., Hauswirth, M., & Soulé, R. (2020). Analyzing system performance with probabilistic performance annotations. In Proceedings of the 15th European Conference on Computer Systems, EuroSys 2020. Association for Computing Machinery. https://doi.org/10.1145/3342195.3387554
Register to see more suggestions
Mendeley helps you to discover research relevant for your work.