• Eric Anger
  • Andrew Kerr
  • Sudhakar Yalamanchili



Eiger Performance Modeling Framework

The Eiger framework enables generating empirical performance models for applications by automating the discovery of relationships between algorithm and architecture parameters. We seek to achieve these objectives via the use of statistical methods from the fields of machine learning and data mining. Our approach attempts to discover relationships between application parameters and performance metrics (such as execution time, power, or reliability) taken from actual executions. Rather than perform detailed simulation or manually construct analytic performance models informed by detailed analysis of the target processor(s), Eiger automatically constructs coarse-grain predictive models when trained with results of similar applications on similar machines. The regression models may be as simple or complex as desired using metrics ranging from static application instruction counts, dynamic instruction counts, working set size, and more. The designer may use the same automated method, incorporating metrics of increasing levels of detail to improve the accuracy of their predictions. Eiger is being applied to conventional as well as GPU processors.


Currently Eiger is being applied to automatically develop execution models of applications for incorporation into high level simulation models for very large scale HPC systems. The candidate applications are converted into application skeletons as the vehicle for simulation. Reducing complexity of the applications into these skeletons trades off accuracy for scale; simulating very large systems running application skeletons can run orders of magnitude faster than their full application counterparts. Eiger models are used to inform application skeletons about trends in application performance, which are then automatically integrated into SST -Macro – a modeling and simulation environment developed at Sandia National Laboratories and used to explore the space of future Exascale architectures. Eiger is being developed to support the application-architecture co-design process used in the CODEX project.


All source code and development discussion can be found here.


  • E. Anger, S. Yalamanchili, D. Dechev, G. Hendry and J. Wilke. “Application Modeling for Scalable Simulation of Massively Parallel Systems.” 2015 IEEE International Conference on High Performance Computing and Communications (HPCC 2015). August 2015. paper
  • Eric Anger, Gilbert Hendry, Sudhakar Yalamanchili. Modeling Exascale Applications with SST/macro and Eiger (tutorial). IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS). April 2013.
  • A. Kerr, E. Anger, G. Hendry, and S. Yalamanchili. “Eiger: A framework for the automated synthesis of statistical performance models.” 1st Workshop on Performance Engineering and Applications (WPEA). December 2012. paper
  • Andrew Kerr, Gregory Diamos, and Sudhakar Yalamanchili. “Modeling GPU-CPU Workloads and Systems.” Workshop on General Purpose Processing Using GPUs (GPGPU). March 2010. paper

The papers are provided for personal use and are subject to copyright of the publishers.