workshop on Tempo, a partial evaluator for C

marlet@irisa.fr (Renaud Marlet)
21 Jan 1998 23:51:57 -0500

          From comp.compilers

Related articles
workshop on Tempo, a partial evaluator for C marlet@irisa.fr (1998-01-21)
| List of all articles for this month |

From: marlet@irisa.fr (Renaud Marlet)
Newsgroups: comp.compilers
Date: 21 Jan 1998 23:51:57 -0500
Organization: IRISA, Campus de Beaulieu, 35042 Rennes Cedex, FRANCE
Keywords: conference, C, optimize

------------
TEMPO'98
------------


The first Tempo workshop will be held at IRISA (Rennes, France),
March 16-18, 1998. The aim of this workshop is to present a
three-day tutorial on Tempo, our partial evaluator for C programs,
and its applications to real size programs. A similar workshop
will be held at OGI (Portland, Oregon) at the beginning of april.


This workshop is the culmination of a three-year research project
at IRISA and in collaboration with OGI. Tempo has been used to
dramatically improve the performance of a wide range of commodity
operating systems components, including Sun's RPC, Unix signal
delivery, and the Berkeley packet filter. Tempo has also been
successfully applied to scientific programs, interpreters and
software engineering.


Specialization is an approach aimed at reconciling generality and
performance. It is based on a program transformation technique
called partial evaluation which consists in adapting programs with
respect to a known context. Exploiting the context allows a general
system to be instantiated for a particular environment. The
instantiated system is optimized in the sense that all the
operations that depended on the context have been performed.


During the workshop we will make available the first public release of
Tempo. Attendees will be given a full Tempo package. More information
on specialization, partial evaluation and Tempo can be found at URL:
    http://www.irisa.fr/compose


A preliminary program of the workshop is listed below. More information
about the workshop will be available at URL:
    http://www.irisa.fr/compose/tempo/workshop


Charles Consel
Renaud Marlet
Gilles Muller


-----------------------------------------------------------
  Projet COMPOSE Tel: +33 2 99 84 72 06
  IRISA Fax: +33 2 99 84 71 71
  de Beaulieu URL: http://www.irisa.fr/compose
  35042 RENNES CEDEX E-mail: compose-contact@irisa.fr
------------------------------------------------------------






------------------------------------------------------------
TEMPO'98: Preliminary Program
------------------------------------------------------------


-------------------------------------
- Introduction to Partial Evaluation
-------------------------------------


                * The idea


                * An example


                * Definition of PE


                * Applications


                * Principles of PE


                * State of the art


------------------------------------------------
- How to go about partially evaluating a program
------------------------------------------------


                * Identifying specialization opportunities


                * Specializing


                * Managing:
                                . Invariants (stable/unstable)
                                . Specialized code


                * Measuring the effect of specialization


-------------------
- Tutorial on Tempo
-------------------


                * Overview of Tempo


                * Compile-time specialization


                * Run-time specialization


                * Advanced features


--------------
- Lab Sessions
--------------


* Various programs will be examined.


-------------------
- Research Projects
-------------------


                * Operating systems


                * Domain-specific languages


* Software architectures




The workshop will end at 18:00 on the third day, after a open
discussion where participants will be able to express ideas and
have feed back on possible applications of Tempo in their area
of work.
--


Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.