Heterogeneous Network Computing with Dome

Fig. 1: This graphic depicts a molecular dynamics application running in parallel on a heterogeneous collection of high performance workstations.

The goal of the Dome (distributed object migration environment) project is to facilitate the development of high performance computing applications running in parallel on networks of computers. We are using Dome to develop grand challenge applications such as molecular dynamics, nuclear physics, distributed simulation, gene sequencing, and speech recognition. Dome makes it possible to take advantage of multicomputers (workstation networks), MPPs (massively parallel processors), advanced operating systems, and gigabit networks being developed under the HPCC program.

Dome provides this capability through libraries of distributed objects (i.e., scalable software) which can be used to program heterogeneous networks of computers as a single resource, obtaining performance that cannot be achieved on the individual machines. Dome addresses the problems of load balancing in a heterogeneous multiuser environment, ease of programming, and fault tolerance. Dome objects distribute themselves automatically over multiple computers. As a program runs Dome will attempt to keep the workload balanced across the various machines. This is essential since the machines and networks have multiple users. The left half of Fig. 1 shows the compute speeds for four different machines over time. The vertical bars in the figure show how Dome changes the workload as processors become slower and faster. The visualization also shows the computation being performed, in this case the energy and motion among a group of argon atoms. Since Dome programs use multiple machines, the chance of a failure is increased. Dome also supports mechanisms for failure resilience in a heterogeneous environment.

For more information on this project and this page contact:

Dr. Adam Beguelin, Email: adamb@cs.cmu.edu, Telephone: (412)268-5295