SIFt: A Compiler for Streaming Applications

Due to the increasing popularity of multimedia content and wireless computing, streaming applications have become an important part of modern computing workloads. Several hardware architectures that are geared towards such applications have been proposed, but compiler support for streams has not kept pace. This thesis presents an intermediate format and set of compilation techniques for a stream-aware compiler. The prototype implementation of this compiler targets the MIT Raw architecture. Performance results suggest that certain applications perform better when compiled using these techniques than when compiled using ILP-extraction techniques alone. However, these same results show that further optimizations are necessary to realize the maximum throughput of a streaming application. Three such optimizations are outlined. Thesis Supervisor: Saman Amarasinghe Title: Assistant Professor

[1]  Gilles Kahn,et al.  The Semantics of a Simple Language for Parallel Programming , 1974, IFIP Congress.

[2]  Steven W. K. Tjiang,et al.  SUIF: an infrastructure for research on parallelizing and optimizing compilers , 1994, SIGP.

[3]  W. Siebert Circuits, Signals and Systems , 1985 .

[4]  Andrea S. LaPaugh Layout Algorithms for VLSI deisgn. , 1996 .

[5]  Vivek Sarkar,et al.  Space-time scheduling of instruction-level parallelism on a raw machine , 1998, ASPLOS VIII.

[6]  Benjamin C. Pierce,et al.  Pict: a programming language based on the Pi-Calculus , 2000, Proof, Language, and Interaction.

[7]  Seth Copen Goldstein,et al.  PipeRench: a co/processor for streaming multimedia acceleration , 1999, ISCA.

[8]  William J. Dally,et al.  A bandwidth-efficient architecture for media processing , 1998, Proceedings. 31st Annual ACM/IEEE International Symposium on Microarchitecture.

[9]  Lawrence Davis,et al.  Genetic Algorithms and Simulated Annealing , 1987 .

[10]  Michael Bedford Taylor,et al.  Design decision in the implementation of a raw architecture workstation , 1999 .

[11]  Eddie Kohler,et al.  The Click modular router , 1999, SOSP.

[12]  Rami G. Melhem,et al.  Compiled Communication for All-Optical TDM Networks , 1996, Proceedings of the 1996 ACM/IEEE Conference on Supercomputing.

[13]  V. Michael Bove,et al.  Cheops: a reconfigurable data-flow system for video processing , 1995, IEEE Trans. Circuits Syst. Video Technol..

[14]  Jifeng He,et al.  Towards a Provably Correct Hardware Implementation of Occam , 1993, CHARME.

[15]  Bernard P. Zajac Applied cryptography: Protocols, algorithms, and source code in C , 1994 .

[16]  Anja Feldmann,et al.  Supporting sets of arbitrary connections on iWarp through communication context switches , 1993, SPAA '93.

[17]  John V. Guttag,et al.  Virtual radios , 1999, IEEE J. Sel. Areas Commun..

[18]  EDDIE KOHLER,et al.  The click modular router , 2000, TOCS.

[19]  Vivek Sarkar,et al.  Baring It All to Software: Raw Machines , 1997, Computer.

[20]  Patrick Valduriez,et al.  SVP - a Model Capturing Sets, Streams, and Parallelism , 1998 .

[21]  Gerald J. Sussman,et al.  Structure and interpretation of computer programs , 1985, Proceedings of the IEEE.