Hierarchical computation in the SPMD programming model
Conference
·
Large-scale parallel machines are programmed mainly with the single program, multiple data (SPMD) model of parallelism. While this model has advantages of scalability and simplicity, it does not fit well with divide-and-conquer parallelism or hierarchical machines that mix shared and distributed memory. In this paper, we define the recursive single program, multiple data model (RSPMD) that extends SPMD with a hierarchical team mechanism to support hierarchical algorithms and machines. We implement this model in the Titanium language and describe how to eliminate a class of deadlocks by ensuring alignment of collective operations. We present application case studies evaluating the RSPMD model, showing that it enables divide-and-conquer algorithms such as sorting to be elegantly expressed and that team collective operations increase performance of conjugate gradient by up to a factor of two. The model also facilitates optimizations for hierarchical machines, improving scalability of particle in cell by 8x and performance of sorting and a stencil code by up to 40% and 14%, respectively.
- Research Organization:
- Lawrence Berkeley National Laboratory (LBNL), Berkeley, CA (United States)
- Sponsoring Organization:
- USDOE Office of Science (SC)
- DOE Contract Number:
- AC02-05CH11231
- OSTI ID:
- 1523918
- Country of Publication:
- United States
- Language:
- English
Similar Records
Visualizing the performance of SPMD and data-parallel programs
Supporting divide-and-conquer algorithms for image processing
CilkSpec: Optimistic Concurrency for Cilk
Journal Article
·
Tue Jun 01 00:00:00 EDT 1993
· Journal of Parallel and Distributed Computing; (United States)
·
OSTI ID:6432710
Supporting divide-and-conquer algorithms for image processing
Journal Article
·
Sat Jan 31 23:00:00 EST 1987
· J. Parallel Distrib. Comput.; (United States)
·
OSTI ID:6984858
CilkSpec: Optimistic Concurrency for Cilk
Conference
·
Sat Nov 14 23:00:00 EST 2015
·
OSTI ID:1236312