Facilitating the development of portable parallel applications on distributed memory systems

In this paper, two programming tools are presented, facilitating the development of portable parallel applications on distributed memory systems. The Orchid system is a software platform, i.e. a set of facilities for parallel programming. It consists of mechanisms for transparent message passing and a set of primitive functions to support the distributed shared memory programming model. In order to free the user from the tedius task of parallel programming, a new environment for logic programming is introduced: the Daffodil framework. Daffodil, implemented on top of Orchid, evaluates pure PROLOG programs exploiting the inherent AND/OR parallelism. Both systems have been implemented and evaluated on various platforms, since the layered structure of Orchid ensures portability only by re-engineering a small part of the code.

[1]  Kang Zhang A review of exploitation of AND-parallelism and combined AND/OR-parallelism in logic programs , 1994, SIGP.

[2]  Roberto Bisiani,et al.  PLUS: a distributed shared-memory system , 1990, [1990] Proceedings. The 17th Annual International Symposium on Computer Architecture.

[3]  Philippe Robert,et al.  The PEPSys Model: Combining Backtracking, AND- and OR-Parallelism , 1987, SLP.

[4]  Vaidy S. Sunderam,et al.  PVM: A Framework for Parallel Distributed Computing , 1990, Concurr. Pract. Exp..

[5]  George K. Papakonstantinou,et al.  Attribute grammar based theorem prover , 1988 .

[6]  George K. Papakonstantinou,et al.  AGP: A Parallel Processor for Knowledge and Software Engineering , 1992, Comput. J..

[7]  George K. Papakonstantinou,et al.  Dependency-Directed Binding of Variables For Constraint Logic Programming , 1994, DEXA.

[8]  Rong Yang,et al.  IDIOM: Integrating Dependent And-, Independent And-, and Or-parallelism , 1991, ISLP.

[9]  George K. Papakonstantinou,et al.  Orchid: A portable platform for parallel programming , 1997, J. Syst. Archit..

[10]  Geert Adriaens,et al.  Parallel Natural Language Processing , 1994 .

[11]  George K. Papakonstantinou,et al.  Orchid: the design of a parallel and portable software platform for local area networks , 1995, Proceedings 1st International Conference on Algorithms and Architectures for Parallel Processing.

[12]  George K. Papakonstantinou,et al.  Attribute-grammar interpreter for inexact reasoning , 1990 .

[13]  Henri E. Bal,et al.  Panda: a portable platform to support parallel programming languages , 1993 .

[14]  George K. Papakonstantinou,et al.  Knowledge Representation with Attribute Grammars , 1986, Comput. J..

[15]  Rong Yang,et al.  The Andorra-I Preprocessor: Supporting Full Prolog on the Basic Andorra Model , 1991, ICLP.

[16]  Jan Maluszynski,et al.  Relating Logic Programs and Attribute Grammars , 1985, J. Log. Program..

[17]  Martha Sideri,et al.  Semantically Driven Parsing of Context-Free Languages , 1989, Comput. J..

[18]  Rong Yang,et al.  The Andorra-I Engine: A Parallel Implementation of the Basic Andorra Model , 1991, ICLP.

[19]  Partha Dasgupta,et al.  The Clouds distributed operating system: functional description, implementation details and related work , 1988, [1988] Proceedings. The 8th International Conference on Distributed.

[20]  George K. Papakonstantinou,et al.  A portable platform for parallel databases , 1995, HPCN Europe.

[21]  Liuba Shrira,et al.  Promises: linguistic support for efficient asynchronous procedure calls in distributed systems , 1988, PLDI '88.

[22]  Anoop Gupta,et al.  The DASH Prototype: Logic Overhead and Performance , 1993, IEEE Trans. Parallel Distributed Syst..

[23]  Laxmikant V. Kalé,et al.  Machine Independent AND and OR Parallel Execution of Logic Programs: Part I-The Binding Environment , 1994, IEEE Trans. Parallel Distributed Syst..

[24]  Laxmikant V. Kalé,et al.  The Chare Kernel Parallel Programming Language and System , 1990, ICPP.

[25]  George K. Papakonstantinou,et al.  Attribute Grammar Based Modeling of Concurrent Constraint Logic Programming , 1995, Int. J. Artif. Intell. Tools.

[26]  Jacques Chassin de Kergommeaux,et al.  Parallel logic programming systems , 1994, CSUR.

[27]  Ewing L. Lusk,et al.  Monitors, Messages, and Clusters: The p4 Parallel Programming System , 1994, Parallel Comput..