next up previous
Next: I/O intensive applications Up: Emulating Families of High Previous: Emulating Families of High

Irregular Adaptive Scientific Applications

 

We will develop an application emulator to model the performance characteristics of three classes of irregular adaptive scientific computations, along with coupled versions of multiple instances of any of these classes. The targeted computation classes are: (1) adaptive unstructured codes (e.g. unstructured multigrid solvers, integro-differential equation solvers and molecular dynamics codes), (2) structured adaptive codes, (e.g. adaptive multigrid algorithms), and (3)particle codes (e.g. Direct Simulation Monte Carlo methods, Rokhlin-Greengard or Barnes-Hut Fast Multipole codes, particle-in-cell codes).

The Maryland, Syracuse and Rutgers groups have extensive experience with each of these application classes. The three sites have long histories of developing libraries, compilers and runtime support for high performance parallel implementations for application codes from these areas [12, 15, 24, 29, 39, 46, 47]. Maryland has also taken the lead in developing systems software (Maryland's Meta-Chaos library [19]) to couple separately developed applications to carry out complex physical simulations, such as a combustion code coupled to a CFD code, to be able to model complex chemical reactions at fine scales using one application code and fluid flows at perhaps much coarser scales using another application code. The Syracuse group is playing a major role in both the physics and computer science aspects of an NSF Grand Challenge - the simulation of the collision of two black holes. This is built around adaptive mesh finite difference solutions of Einstein's equations. Our application emulators will leverage this extensive experience in a wide range of regular and irregular, static and dynamic applications.

The use of Maryland's Meta-Chaos software will greatly facilitate the construction of the application emulator. Our application emulator will make it possible to model the performance of multiple coupled parallel applications running on distributed sets of multiprocessors and/or networked workstations.

Another example of complex physical simulation is ship hull design. New advanced physics-based methods for the simulation of ship responses in a seaway and for the simulation of the viscous flow field around the hull have made it possible to explore completely new hull forms. DARPA has been supporting the development of a new Arsenal Ship design with an entirely new hull with superior resistance and seakeeping characteristics. The LAMP codes (Large Amplitude Motions Program) are a class of multi-level physics codes for the simulation of wave body interactions of ship movements. The codes have been developed by the ship design division of SAIC. The LAMP codes are based on 3D integro-differential equation approximations and are iterative in time steps. The computations for the kernel approximations are dynamic and irregular.

The LAMP codes provide an excellent testbed application for future parallel systems and software. They have large memory requirements because the history of the ship movement needs to be stored to predict future movements and forces on the ship. Furthermore, the more physically accurate high level codes (LAMP-4 and above) require teraflop and petaflop performance to be used in an integrated design environment (LAMP-4 takes 1 CPU month on a CRAY C90-1 processor using 500 ship panels and 30 minutes of ship movement simulation. A typical 100 candidate design simulation requires about tex2html_wrap_inline620 Teraflops). Under the HPCD project Rutgers is working with SAIC on a scalable version written in MPI and on more robust LAMP codes. The LAMP codes are representative of a larger set of physical codes for multi-level ship design methods. For these classes of applications, the application emulators must model the varying quantities and patterns of computation from the application codes, including the data dependent nature of the computations. This means that the emulators must parameterize the behavior of the data access patterns of the applications, to model both the interprocessor communication within one application and the interprocessor communication generated through the coupling of multiple applications to form a complete distributed physical simulation.


next up previous
Next: I/O intensive applications Up: Emulating Families of High Previous: Emulating Families of High

Wes Stevens
Fri Jul 11 15:07:44 EDT 1997