1998 Annual Report
Computer Science and Applied Mathematics
Parallel Library for Algorithm Development |
|
|
Vince Beckner, Chuck Rendleman, and Mike Lijewski of NERSC's Center for Computational Sciences and Engineering (CCSE), have performed a valuable service for algorithm developers by designing a parallel version of CCSE's BoxLib software. BoxLib is a library of C++ classes that facilitate the development of block-structured finite difference algorithms such as arise in the solution of systems of partial differential equations. BoxLib is particularly useful for creating AMR algorithms. Using the Bulk Synchronous Parallelism (BSP) communications package from Oxford University, they were able to hide most details of the parallel code in the C++ libraries on which the algorithms are built. As a result, the algorithm developer does not have to deal with data distribution, communication, etc.--these issues are all handled by the underlying class hierarchies. The parallel BoxLib is easily portable and has been successfully tested on the Cray T3E and on several SMP systems. It was used to port several atmospheric modeling codes to the T3E. BoxLib contains rich data structures for describing operations which take place on data defined in regions of index space that are unions of non-intersecting rectangles. Because the regions of interest may change in response to an evolving solution, support is provided in BoxLib for efficiently building and destroying the data structures. |
Mike Lijewski, Vince Beckner, and Chuck Rendleman designed the parallel BoxLib library in such a way that algorithm developers do not have to worry about data distribution. |
| INDEX | NEXT >> |