Performance Models


Description / Outline

Performance models describe the interaction between an application and the hardware, forming the basis for a deep understanding of the runtime behavior of an application. The group pursues an analytic approach, the essential components of which are application models and machine models. These components are initially created independently, but their combination and interaction finally provide insights about the bottlenecks and the expected performance. Especially the creation of accurate machine models requires a profound microarchitecture analysis. 

The execution cache memory (ECM) developed by the group allows predictions of single-core performance as well as scaling within a multi-core processor or compute node. In combination with analytic models of electrical power consumption, it can also be used to derive estimates for the energy consumption of an application. The ECM model is a generalization of the well-known Roofline model. 

Beyond the node level, the group investigates the performance of highly parallel MPI and hybrid applications, especially those without frequent synchronizing operations. Applications show highly dynamic behavior due to their interaction with the system's hardware bottlenecks, such as memory and network bandwidth. As a consequence, a simple additive combination of runtime models for the different phases of an application is often inaccurate. We extend existing node-level and communication models to describe effects like desynchronization, resynchronization, and idle wave propagation.

Faculty/Institution