Not Logged In

Pattern-based Parallel Programming

Full Text: icpp02.pdf PDF

The advantages of pattern-based programming have been well documented in the sequential literature. However patterns have yet to make their way into mainstream parallel computing, even though several research tools support them. There are two critical shortcomings of pattern (or template) based systems for parallel programming: lack of extensibility and performance. The patterns supported by a tool are typically limited in number or scope, thereby narrowing the applicability of a given system. As well, patterns usually offer generic solutions, which incur additional runtime overhead that impacts performance. This paper describes our approach for addressing these problems in the CO2P3S parallel programming system. CO2P3S supports multiple levels of abstraction, allowing the user to design an application with high-level patterns, but move to lower levels of abstraction for performance tuning. Patterns are implemented as parameterized templates, allowing the user the ability to customize the pattern to meet their needs. CO2P3S generates code that is specific to the pattern/parameter combination selected by the user. The MetaCO2P3S tool addresses extensibility by giving users the ability to design and add new pattern templates to CO2P3S. Since the pattern templates are stored in a system-independent format, they are suitable for storing in a repository to be shared throughout the user community. The CO2P3S/MetaCO2P3S combination is unique in the parallel computing world. Keywords: parallel programming environment, design patterns, frameworks, meta-programming. Technical Area: Programming Methodology and Tools

Citation

S. Bromling, S. MacDonald, J. Anvik, J. Schaeffer, D. Szafron, K. Tan. "Pattern-based Parallel Programming". International Conference on Parallel Processing (ICPP), pp 257-265, February 2002.

Keywords:  
Category: In Conference

BibTeX

@incollection{Bromling+al:ICPP02,
  author = {Steve Bromling and Steve MacDonald and John Anvik and Jonathan
    Schaeffer and Duane Szafron and Kai Tan},
  title = {Pattern-based Parallel Programming},
  Pages = {257-265},
  booktitle = {International Conference on Parallel Processing (ICPP)},
  year = 2002,
}

Last Updated: November 30, 2006
Submitted by Valerie Dacyk

University of Alberta Logo AICML Logo