Personal tools
You are here: Home Research Programming Tools Automatic Construction of Performance Models
Document Actions

Automatic Construction of Performance Models

by admin last modified 2007-12-14 12:05
One aspect of making applications Grid aware, in the sense of our current infrastructure, is the construction of performance models for the application's components in order to make proper decisions for resource selection and scheduling. The construction of performance models for the EMAN application  was initially a major focus of VGrADS research efforts. We are now moving those efforts toward other applications such as LEAD.

Our approach for EMAN used a set of equations, the structure of which was derived from knowledge of the component's computational requirements and the dependence upon input variables such as micrograph sizes, number of micrographs, and variables controlling the processing of the micrographs.  Model parameters were then determined from execution traces.  The goal was to separate application characteristics invariant with respect to architectures from those that are dependent.  For instance, the number of floating point operations should be independent of the platform used for the processing, but the number of indexing instructions may depend upon the platform, compiler, and compiler options used.  Similarly, memory access patterns should have a strong correlation to the application, while the number of cycles required will depend significantly on the memory system.

To better understand the impact of the memory system on performance of EMAN, we pursued a novel approach using application binary analysis to instrument training (test) runs of the application to determine the distance, in number of memory accesses, between accesses to the same cache block. Using results from several training runs, we fit curves to the data to determine the effect of increasing problem size on this "reuse distance". This provided us with a reasonably accurate performance model that was able to predict which memory access resulted in cache misses.

By integrating the components described above, we derived and validated a model for the main EMAN components.  In addition, we tested the methodology on a number of other scientific computations and found good agreement with measured performance.
« September 2010 »
Su Mo Tu We Th Fr Sa

VGrADS Collaborators include:


Powered by Plone