Elsevier

Computer Languages

Volume 20, Issue 4, November 1994, Pages 253-265
Computer Languages

A process oriented semantics of the PRAM-language FORK

https://doi.org/10.1016/0096-0551(94)90007-8Get rights and content

Abstract

The parallel language FORK [1], based on a scalable shared memory model, is a PASCAL-like language with some additional parallel constructs. A PRAM (Parallel Random Access Machine) algorithm can be expressed on a high level of abstraction as a FORK program which is translated into efficient PRAM code guaranteeing theoretically predicted runtimes.

In this paper, we concentrate on those features of the language FORK related to parallelism, such as the group concept, a shared memory access and synchronous or asynchronous execution. We present a trace-based denotational interleaving semantics where processes describe synchronous computations. Processes are created or deleted dynamically and run asynchronously. Interleaving rules reflect the underlying CRCW (concurrent-read-concurrent-write) PRAM model.

References (14)

  • T. Hagerup et al.

    FORK—A high-level language for PRAMs

  • S. Fortune et al.

    Parallelism in random access machines

  • A. Gibbons et al.

    Efficient Parallel Algorithms

    (1988)
  • T. Hagerup et al.

    Every robust CRCW PRAM can effectively simulate a priority PRAM

  • L. Valiant

    A bridging model for parallel computation

    Comm. ACM

    (1990)
  • D. Culler et al.

    LogP: Towards a realistic model of parallel computation

  • T. Heywood et al.

    A practical hierarchical model of parallel computation

    J. Parallel Distributed Comput.

    (1992)
There are more references available in the full text version of this article.

Cited by (0)

View full text