June 1, 2014
Conference Paper

Palm: Easing the Burden of Analytical Performance Modeling

Abstract

Analytical (predictive) application performance models are critical for diagnosing performance-limiting resources, optimizing systems, and designing machines. Creating models, however, is difficult because they must be both accurate and concise. To ease the burden of performance modeling, we developed Palm, a modeling tool that combines top-down (human-provided) semantic insight with bottom-up static and dynamic analysis. To express insight, Palm defines a source code modeling annotation language. By coordinating models and source code, Palm's models are `first-class' and reproducible. Unlike prior work, Palm formally links models, functions, and measurements. As a result, Palm (a) uses functions to either abstract or express complexity (b) generates hierarchical models (representing an application's static and dynamic structure); and (c) automatically incorporates measurements to focus attention, represent constant behavior, and validate models. We discuss generating models for three different applications.

Revised: April 23, 2015 | Published: June 1, 2014

Citation

Tallent N.R., and A. Hoisie. 2014. "Palm: Easing the Burden of Analytical Performance Modeling." In Proceedings of the 28th International Conference on Supercomputing (ICS '14), June 10-13, 2014 Munich, Germany, 221-230. New York, New York:Association for Computing Machinery. PNNL-SA-101713. doi:10.1145/2597652.2597683