Orchid: A portable platform for parallel programming

https://doi.org/10.1016/S1383-7621(96)00057-4Get rights and content

Abstract

In this paper we present the Orchid system, a new portable and scalable platform for parallel programming, suitable for any type of distributed memory architecture. It includes libraries that facilitate dynamic process allocation, asynchronous process communication, and global process synchronization. It also integrates a set of flexible mechanisms for the implementation of a wide variety of Distributed Shared Memory (DSM) paradigms. As an example, two different DSM paradigms are proposed. Moreover, a new polyparametric model is suggested, which can be used in the performance evaluation of any DSM paradigm. Orchid has been successfully used for the development of a large scale application, i.e. an environment for parallel logic programming, based on attribute grammars.

References (48)

  • S. Ahuja

    Linda and friends

    IEEE Computer

    (Aug. 1986)
  • J.K. Bennet et al.

    Munin: Distributed shared memory based on type-specific memory coherence

  • R. Bisiani et al.

    Architectural support for multilanguage parallel programming on heterogeneous systems

  • H.E. Bal et al.

    Object distribution in Orca using compile-time and run-time techniques

  • H.E. Bal et al.

    Orca: A language for parallel programming of distributed systems

    IEEE Trans. on Software Engineering

    (March 1992)
  • H.E. Bal et al.

    Replication techniques for speeding up parallel applications on distributed systems

    Concurrency Practice and Experience

    (1992)
  • R. Butler et al.

    Monitors messages and clusters: The p4 parallel programming system

  • R. Bisiani et al.

    Plus: A distributed shared memory system

  • R. Bhoedjang et al.

    Panda: A portable platform to support parallel programming languages

  • D. Chaiken et al.

    Software-extended coherent shared memory

  • P. Derasant

    Attribute grammars

  • E. Dijkstra

    Two problems in connection with graphs

    Num. Math.

    (1959)
  • Partha Dasgupta et al.

    Mustaque Ahamad and Umakishore Ramachandran

  • P. Derasant et al.

    Relating logic programs and attribute grammars

    Journal of Logic Programming

    (1985)
  • Brett D. Fleisch et al.

    Mirage: A coherent distributed shared memory design

    ACM

    (1989)
  • E. Jul

    Fine-grained mobility in the emerald system

    ACM Tarns. Computer Systems

    (1988)
  • L.V. Kale

    The chare kernel parallel programming system

  • D.E. Knuth

    Semantics of context-free languages: Correction

    Math. Syst. Theory Journal

    (1971)
  • J. Kuskin et al.

    The Stanford FLASH multiprocessor

  • K. Li et al.

    Memory coherence in shared virtual memory systems

    ACM Transactions on Computer Systems

    (1989)
  • K. Li

    IVY: A shared virtual memory system for parallel programming of distributed systems

    IEEE Trans. Software Engineering

    (1992)
  • W.G. Levelt et al.

    A comparison of two paradigms for distributed shared memory

    Software-Practice and Experience

    (1992)
  • D. Lenoski et al.

    The Dash prototype: Logic overhead and performance

    IEEE Transactions on Parallel and Distributed Systems

    (1993)
  • B. Liskov et al.

    Promises: Linguistic support for efficient asynchronous procedure calls in distributed systems

  • Cited by (1)

    View full text