Scott Draves

Thesis Title: Automatic Program Specialization for Interactive Media
Degree Type: Ph.D. in Computer Science
Advisor(s): Peter Lee
Graduated: August 1997

Abstract:

This dissertation introduces and analyzes techniques for writing programs that manipulate interactive media. By "media" I mean audio, images, and video flowing through a personal computer. By "interactive" I mean that there is an impatient and unpredictable user who produces and consumes this media. Historically, such systems that provide low latency and remain highly flexible have been rare and difficult to build. I propose treating media systems as programming languages and bringing the techniques of semantics-based program transformation to bear. One part of this solution is the use of compiler generation as an interface to run-time code generation. The idea is to use automatic specialization to convert flexible programs into fast programs. This idea has already been developed by the partial evaluation community. In order to make it work better with media, I extend the known techniques for specialization with partially static integers and equality constraints. I demonstrate the effectiveness of these techniques by using a prototype implementation to benchmark kernels such as wave-table audio synthesis and color-to-grayscale conversion.

Thesis Committee:
Peter Lee (Chair)
William Scherlis
Andy Witkin
Olivier Danvy

James Morris, Head, Computer Science Department
Raj Reddy Dean, School of Computer Science

Keywords:
Compiler generation, partial evaluation, run-time code generation, Bit-addressing, signal processing

CMU-CS-97-159.pdf (362.61 KB) ( 145 pages)
Copyright Notice