CURARE. Restructuring Lisp Programs for Concurrent Execution

Abstract

This paper describes the techniques used by CURARE, a program transformer, to restructure Lisp programs for concurrent execution in shared- memory multi-processor Lisp systems. CURARE tries to eliminate control and data- dependencies that prevent concurrent execution of the invocations of recursive functions. CURARE also inserts a variety of synchronization devices to ensure that unremovable dependencies do not impair execution of a program. The product of this process is semantically equivalent to the original Lisp program, but executes faster on a multiprocessor than would the original program.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Feb 25, 1987
Accession Number
ADA179324

Entities

People

  • James R. Larus

Organizations

  • University of California, Berkeley

Tags

Communities of Interest

  • C4I
  • Materials and Manufacturing Processes

DTIC Thesaurus Topics

  • Abstracts
  • Algorithms
  • Cells
  • Classification
  • Computer Programming
  • Computers
  • Fish
  • Language
  • Lepidoptera
  • Lisp Programming Language
  • Models
  • Multiprocessors
  • Programming Languages
  • Recursive Functions
  • Semantics
  • Side Effects
  • Transfer Functions

Fields of Study

  • Computer science
  • Engineering

Readers

  • Computational Linguistics
  • Parallel and Distributed Computing.