A parallel software infrastructure for dynamic block-irregular scientific calculations

Scott R. Kohn, Scott B. Baden · 1995

Dear Sir or Madam, will you read my book? It took me years to write, will you take a look?--John Lennon and Paul McCartney, Paperback Writer (DIAGRAM, TABLE OR GRAPHIC OMITTED...PLEASE SEE DAI) The accurate solution of many problems in science and engineering requires the resolution of unpredictable, localized physical phenomena. Such applications may involve the solution of complicated, time-dependent partial differential equations such as those in materials design, computational fluid dynamics, astrophysics, and molecular dynamics. The important feature of these numerical problems is that some portions of the computational domain require higher resolution, and thus more computational effort, than others. Parallel supercomputers offer the power to solve many of these computationally intensive tasks; however, these applications are particularly challenging to implement on parallel architectures because they rely on dynamic, complicated, irregular structures with dynamic and irregular communication patterns. Current parallel software technology does not yet afford a solution, and new programming abstractions--along with the accompanying run-time support--are needed. We have developed a parallel software infrastructure to simplify the implementation of dynamic, irregular, block-structured scientific computations on high-performance parallel supercomputers. Our software infrastructure provides computational scientists with high-level, domain-specific tools that hide low-level details of the parallel hardware. It is portable across a wide range of parallel architectures. At the center of our infrastructure is the LPARX parallel programming system. LPARX introduces the concept of structural abstraction, which enables applications to dynamically manipulate irregular data decompositions as language-level objects. LPARX provides a framework for creating decompositions that may be tailored to meet the needs of a particular application. Building on the LPARX abstractions, we have developed application programmer interfaces (APIs) for two important classes of applications: structured adaptive mesh methods and particle calculations. These APIs enable scientists to concentrate on the mathematics and the physics of their application; APIs provide high-level software tools that hide underlying implementation details. Our parallel software infrastructure has enabled computational scientists to explore new approaches to solving a variety of problems, and it has reduced the development time of challenging numerical applications. Indeed, we have applied our structured adaptive mesh API to the adaptive solution of eigenvalue problems in materials design and our particle API to a 3d smoothed particle hydrodynamics application in astrophysics.

Read the paper · More papers on PaperTik