A library-based approach to portable, parallel, object-oriented programming: interface, implementation, and application

  • Authors:
  • Steven Parkes;John A. Chandy;Prithviraj Banerjee

  • Affiliations:
  • University of Illinois, Urbana, IL;University of Illinois, Urbana, IL;University of Illinois, Urbana, IL

  • Venue:
  • Proceedings of the 1994 ACM/IEEE conference on Supercomputing
  • Year:
  • 1994

Quantified Score

Hi-index 0.00

Visualization

Abstract

The use of parallel platforms, despite increasing availability, remains largely restricted to well-structured, numeric applications. We address the issue of facilitating the use of parallel platforms on unstructured problems through object-oriented design techniques and the actor model of concurrent computation. We present a multi-level approach to expressing parallelism for unstructured applications: a high-level interface based on the actor model of concurrent object-oriented programming and a low-level interface which provides an object-oriented interface to system services across a wide range of parallel architectures. The high- and low-level interfaces are implemented as part of the ProperCAD II C++ class library which supports shared-memory, message-passing, and and hybrid architectures. We demonstrate our approach through a detailed examination of the parallelization process for an existing unstructured serial application, a state-of-the-art VLSI computer-aided design application. We compare and contrast the library-based actor approach to other methods for expressing parallelism in C++ on a number of applications and kernels.