Title :
A library-based approach to portable, parallel, object-oriented programming: interface, implementation, and application
Author :
Parkes, Steven ; Chandy, John A. ; Banerjee, Prithviraj
Author_Institution :
Center for Reliable & High Performance Comput., Illinois Univ., Urbana, IL, USA
Abstract :
The use of parallel platforms, despite their 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, viz. a state-of-the-art VLSI computer-aided design application. We compare and contrast the library-based actor approach to other method for expressing parallelism in C++ on a number of applications and kernels
Keywords :
VLSI; circuit CAD; object-oriented programming; parallel architectures; parallel programming; software libraries; software portability; ProperCAD II C++ class library; VLSI computer-aided design application; actor model; concurrent computation; high-level interface; hybrid architectures; kernels; low-level interface; message-passing architecture; multi-level approach; object-oriented design techniques; parallel architectures; parallel platforms; parallelization process; portable parallel object-oriented programming; serial application; shared memory architecture; system services; unstructured problems; Application software; Computational modeling; Computer architecture; Concurrent computing; Libraries; Object oriented modeling; Object oriented programming; Parallel architectures; Parallel processing; Very large scale integration;
Conference_Titel :
Supercomputing '94., Proceedings
Conference_Location :
Washington, DC
Print_ISBN :
0-8186-6605-6
DOI :
10.1109/SUPERC.1994.344267