Please Post

 





 

KeLP:A C++ Class Library for Implementing Portable Scientific Applications on Distributed Memory Parallel Architectures

Dan Shalit
University of California at San Diego

 

KeLP (Kernel Lattice Parallelism) is a C++ class library for implementing scientific applications with an underling block structure, including irregular problems such as structured adaptive mesh refinement and multiblock methods. KeLP supports run-time metadata and the ability to manipulate geometric descriptions of data decompositions and data dependencies as first class language objects. It presents scientists with high-level tools that allow them to concentrate on the application and mathematics instead of low-level concerns.


This talk will describe some of KeLP’s data abstractions and how they are used to accomplish the above stated goal. I will describe both the current single-tier production version of Kelp, which is layered on top of MPI, and the research stage multi-tier version. In its original implementation, KeLP is restricted to block-structured computational domains. However, recent changes known as “Abstract KeLP”, soon to be released, relax this restriction somewhat and may permit applicability to some unstructured mesh computations. Preliminary performance results from the port of multi-tier KeLP to SDSC’s IBM Bluehorizon will be presented, and compared to a MPI + Open MP version of the same benchmark hand-coded by Tim Kaiser of SDSC.


Monday July 17, 2000
 10:30 - 12:00 p.m.
Mesa Lab: Main Seminar Room.

Workshops will be held at 2PM the day of the seminar in the Chapman Room