Electrical Engineering
      and Computer Sciences

Electrical Engineering and Computer Sciences

COLLEGE OF ENGINEERING

UC Berkeley

Curare: Restructuring Lisp Programs For Concurrent Execution

James R Larus

EECS Department
University of California, Berkeley
Technical Report No. UCB/CSD-87-344
February 1987

http://www.eecs.berkeley.edu/Pubs/TechRpts/1987/CSD-87-344.pdf

This paper describes the techniques used by CURARE, a program transformer, to restructure Lisp programs for concurrent execution in multiprocessor 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.


BibTeX citation:

@techreport{Larus:CSD-87-344,
    Author = {Larus, James R},
    Title = {Curare: Restructuring Lisp Programs For Concurrent Execution},
    Institution = {EECS Department, University of California, Berkeley},
    Year = {1987},
    Month = {Feb},
    URL = {http://www.eecs.berkeley.edu/Pubs/TechRpts/1987/5364.html},
    Number = {UCB/CSD-87-344},
    Abstract = {This paper describes the techniques used by CURARE, a program transformer, to restructure Lisp programs for concurrent execution in multiprocessor 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.}
}

EndNote citation:

%0 Report
%A Larus, James R
%T Curare: Restructuring Lisp Programs For Concurrent Execution
%I EECS Department, University of California, Berkeley
%D 1987
%@ UCB/CSD-87-344
%U http://www.eecs.berkeley.edu/Pubs/TechRpts/1987/5364.html
%F Larus:CSD-87-344