A Code Generation Framework for Actor-Oriented Models with Partial Evaluation

Gang Zhou, Man-Kit Leung and Edward A. Lee

EECS Department
University of California, Berkeley
Technical Report No. UCB/EECS-2007-29
February 23, 2007

http://www2.eecs.berkeley.edu/Pubs/TechRpts/2007/EECS-2007-29.pdf

Embedded software requires alternative concurrency formalisms other than threads and mutexes used in traditional programming languages like C. Actor-oriented design presents a high level abstraction for composing concurrent components. However, high level abstraction often introduces overhead and results in slower system. We address the problem of generating efficient implementation for the systems with such a high level description. We use partial evaluation as an optimized compilation technique for actor-oriented models. We use a helper-based mechanism, which results in flexible and extensible code generation framework. The end result is that the benefit offered by high level abstraction comes with (almost) no performance penalty. The code generation framework has been released in open source form as part of Ptolemy II 6.0.1.

Author Comments: See the published version


BibTeX citation:

@techreport{Zhou:EECS-2007-29,
    Author = {Zhou, Gang and Leung, Man-Kit and Lee, Edward A.},
    Title = {A Code Generation Framework for Actor-Oriented Models with Partial Evaluation},
    Institution = {EECS Department, University of California, Berkeley},
    Year = {2007},
    Month = {Feb},
    URL = {http://www2.eecs.berkeley.edu/Pubs/TechRpts/2007/EECS-2007-29.html},
    Number = {UCB/EECS-2007-29},
    Note = {See the <a href="http://ptolemy.eecs.berkeley.edu/publications/papers/07/codegen/"> published version</a>},
    Abstract = {Embedded software requires alternative concurrency formalisms other than threads and mutexes used in traditional programming languages like C. Actor-oriented design presents a high level abstraction for composing concurrent components. However, high level abstraction often introduces overhead and results in slower system. We address the problem of generating efficient implementation for the systems with such a high level description. We use partial evaluation as an optimized compilation technique for actor-oriented models. We use a helper-based mechanism, which results in flexible and extensible code generation framework. The end result is that the benefit offered by high level abstraction comes with (almost) no performance penalty. The code generation framework has been released  in open source form as part of Ptolemy II 6.0.1.}
}

EndNote citation:

%0 Report
%A Zhou, Gang
%A Leung, Man-Kit
%A Lee, Edward A.
%T A Code Generation Framework for Actor-Oriented Models with Partial Evaluation
%I EECS Department, University of California, Berkeley
%D 2007
%8 February 23
%@ UCB/EECS-2007-29
%U http://www2.eecs.berkeley.edu/Pubs/TechRpts/2007/EECS-2007-29.html
%F Zhou:EECS-2007-29