James R Larus

EECS Department, University of California, Berkeley

Technical Report No. UCB/CSD-87-344

, 1987

http://www2.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},
    Year= {1987},
    Month= {Feb},
    Url= {http://www2.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://www2.eecs.berkeley.edu/Pubs/TechRpts/1987/5364.html
%F Larus:CSD-87-344