| | |
Summary: Linear Analysis and Optimization of Stream Programs
Andrew A. Lamb, William Thies and Saman Amarasinghe
{aalamb, thies, saman}@lcs.mit.edu
Laboratory for Computer Science
Massachusetts Institute of Technology
ABSTRACT
As more complex DSP algorithms are realized in practice,
there is an increasing need for high-level stream abstractions
that can be compiled without sacrificing efficiency. Toward
this end, we present a set of aggressive optimizations that
target linear sections of a stream program. Our input lan-
guage is StreamIt, which represents programs as a hierar-
chical graph of autonomous filters. A filter is linear if each
of its outputs can be represented as an affine combination of
its inputs. Linearity is common in DSP components; exam-
ples include FIR filters, expanders, compressors, FFTs and
DCTs.
We demonstrate that several algorithmic transformations,
traditionally hand-tuned by DSP experts, can be completely
automated by the compiler. First, we present a linear ex-
|