Experience with Parallel Symbolic Applications in Orca

. Orca is a simple, imperative parallel programming language, based on a form of distributed shared memory called shared data-objects. This paper discusses the suitability of Orca for parallel symbolic programming. Orca was not designed specifically for this application area, and it lacks several fe...

Full description

Bibliographic Details
Main Authors: Henri Bal, Koen Langendoen, Raoul Bhoedjang
Other Authors: The Pennsylvania State University CiteSeerX Archives
Format: Text
Language:English
Published: 1995
Subjects:
Online Access:http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.38.5489
Description
Summary:. Orca is a simple, imperative parallel programming language, based on a form of distributed shared memory called shared data-objects. This paper discusses the suitability of Orca for parallel symbolic programming. Orca was not designed specifically for this application area, and it lacks several features supported in many languages for symbolic parallel computing, such as futures, automatic load balancing, and automatic garbage collection. On the other hand, Orca does give high-level support for sharing global state. Also, its implementation automatically distributes shared data (stored in shared objects). We first give a comparison between Orca and two other models: imperative message-passing systems and functional languages. We do so by looking at several key issues in parallel programming and by studying how each of the three paradigms deals with these issues. Next, we describe our experiences with writing parallel symbolic applications in Orca. This work indicates that Or.