Not Logged In

From Patterns to Frameworks to Parallel Programs

Full Text: parco02.pdf PDF

Object–oriented programming, design patterns, and frameworks are abstraction techniques that have been used to reduce the complexity of sequential programming. This paper describes our approach of applying these three techniques to the more difficult parallel programming domain. The Parallel Design Patterns (PDP) process, the basis of the CO2P3S parallel programming system, combines these techniques in a layered development model. The result is a new approach to parallel programming that addresses correctness and openness in a unique way. At the topmost development layer, a customized framework is generated from a design pattern specification of the parallel structure of the program. This framework encapsulates all of the structural details of the pattern, including communication and synchronization, to prevent programmer errors and ensure correctness. Lowerlayers are used only for performance tuning to make the code as efficient as necessary. This paper describes CO2P3S, based on the PDP process, and demonstrates it using an example application. We also provide results from a usability study of CO2P3S with real users.

Citation

S. MacDonald, J. Anvik, S. Bromling, J. Schaeffer, D. Szafron, K. Tan. "From Patterns to Frameworks to Parallel Programs". Parallel Computing, 28(12), pp 1663-1683, January 2002.

Keywords: Parallel programming systems, Design patterns, Object–oriented frameworks.
Category: In Journal

BibTeX

@article{MacDonald+al:02,
  author = {Steve MacDonald and John Anvik and Steve Bromling and Jonathan
    Schaeffer and Duane Szafron and Kai Tan},
  title = {From Patterns to Frameworks to Parallel Programs},
  Volume = "28",
  Number = "12",
  Pages = {1663-1683},
  journal = {Parallel Computing},
  year = 2002,
}

Last Updated: June 05, 2007
Submitted by Staurt H. Johnson

University of Alberta Logo AICML Logo