Next: The Performance Prediction Process
Up: No Title
Previous: G: Technical Rationale and
Our goal is to develop methodologies that will make it possible
to provide approximate predictions of the performance that could
be achieved by sophisticated new applications on new high performance
architectures. While many of the techniques we develop will apply
to any type of application, we will focus on two broad classes
of applications. Loosely synchronous adaptive applications
include adaptive structured or unstructured multigrid codes, particle
methods and multipole codes. Data exploration and data fusion
applications are codes that carry out processing, analysis
and exploration of one or several very large data sets. This class
includes codes that carry out analysis, exploration and fusion
of sensor data from sensors located on different platforms (e.g.
satellites, aircraft and ships), and codes that carry out sensor
data analysis and fusion of data from conventional high power
microscopy, confocal microscopy, electron microscopy, computerized
tomography, and magnetic resonance imaging.
Figure 1: The Performance Prediction Process
The groups involved in this proposal will leverage their extensive
experience with high-end applications through the process depicted
in Figure 1. We list the following salient features of
this process:
- Construction of application emulators motivated by
loosely synchronous adaptive applications and by data exploration
and data fusion applications. An application emulator is a suite
of programs that, when run, exhibits computational and data access
patterns that resemble the patterns observed in a particular type
of application.
- Development of a hierarchical High Level Application Modeling
framework (HLAM), as shown in Figure 2. The HLAM will include
mechanisms to allow users to provide: a) a hierarchical description
of an application, b) a high level specification of a target machine,
c) procedures to define how the hierarchical application description
is mapped to the machine model and d) a cost model to be used in
performance estimation.
- Development of a simulation framework (PetaSIM) that is able
to generate performance predictions using information provided
by the hierarchical high level application modeling framework
- Performance optimization of HLAM and PetaSIM. PetaSIM will
itself likely be a highly irregular parallel application and it may
be necessary to develop an efficient parallel implementation of
PetaSIM.
- Validation of the HLAM/PetaSIM modeling process. We will use
the application emulators to produce application and machine specifications
at varying levels of granularity, and then use PetaSIM to estimate
performance obtained on selected current and future architectures.
We will use detailed simulation tools developed at Maryland and
at other sites to characterize the performance of the application emulators
on selected current architectures (e.g. IBM SP-2) and on a limited
set of future architectures.
- We will use various techniques, including detailed simulation
tools, instrumented static and runtime compilation and analytic
models, to produce PetaSIM cost models.
Figure 2: HLAM - the Hierarchical Application Model
In the next section we describe this performance prediction process
in more detail while Section 3 explains
the application emulation
approach and our approach to choosing applications which will
test and motivate our project.
In Section 4, we describe
how we will integrate the various components of our activity.
Next: The Performance Prediction Process
Up: No Title
Previous: G: Technical Rationale and
Wes Stevens
Fri Jul 11 15:07:44 EDT 1997