Abstract
High-performance streaming applications are a new and distinct domain of programs that is increasingly important. The StreamIt language provides novel high-level representations to improve programmer productivity and program robustness within the streaming domain. At the same time, the StreamIt compiler aims to improve the performance of streaming applications via stream-specific analysis and optimizations. In this paper, we motivate, describes and justify the StreamIt language which include a structured model of streams, a messaging system for control, and a natural textual syntax.
Article PDF
Similar content being viewed by others
Avoid common mistakes on your manuscript.
References
S. Rixner, W. Dally, U. Kapasi, P. Mattson, J. Owens, B. Khailany, and A. Lopez-Lagunas, A Bandwidth-Efficient Architecture for Media Processing, in Int. Symp. on Microarchitecture, pp. 3–13 (December 1998).
H. Abelson G. Sussman (1985) Structure and Interpretation of Computer Programs MIT Press Cambridge, MA.
R. Stephens (1997) ArticleTitleA Survey of Stream Processing Acta Informatica 34 IssueID7 491–541
Mai K., Paaske T., Jayasena N., Ho R., Dally W., Horowitz M. (2000). Smart Memories: A Modular Recongurable Architecture
E. Waingold et al. (1997) Baring it all to Software: The Raw Machine MIT-LCS Technical Report 709 Cambridge, MA.
K. Sankaralingam, R. Nagarajan, S. Keckler, and D. Burger, A Technology-Scalable Architecture for Fast Clocks and High ILP, UT Austin Tech Report 01-02 (2001).
E. Kohler R. Morris B. Chen J. Jannotti M.F. Kaashoek (2000) ArticleTitleThe Click Modular Router ACM Trans. Comput. Syst. 18 IssueID3 263–197
Tennenhouse D., Bose V. (1999). The Spectrum Ware Approach to Wireless Signal Processing, Wireless Netw.
V. Bose, M. Ismert, M. Welborn, and J. Guttag, Virtual Radios, IEEE/JSAC, Special Issue on Software Radios (April 1999).
B. Volume and B. July, Bluetooth Specification, Vol. 1, Bluetooth Consortium (July 1999).
M. Mouly and M. B. Pautet, The GSM System for Mobile Communications, Cell&Sys, Palaiseau, France (1992).
EIA/TIA, Mobile Station–Land Station Compatibility Spec., Technical Report 553, ANSI/EIA/TIA (1989).
Microsoft Corporation, Microsoft DirectShow, Online Documentation (2001).
RealNetworks, Software Developer’s Kit, Online Documentation (2001).
J. Lebak, Polymorphous Computing Architecture (PCA) Example Applications and Description, External Report, MIT Lincoln Laboratory (August 2001).
B. Thies M. Karczmarek S. Amarasinghe (August 2001) StreamIt: A Language for Streaming Applications MIT-LCS Technical Memo TM-620 Cambridge, MA.
W. Thies M. Karczmarek M. Gordon D. Maze J. Wong H. Hoffmann M. Brown S. Amarasinghe (December 2001) StreamIt: A Compiler for Streaming Applications Technical Memo TM-622, MIT-LCS Cambridge, MA.
V. Gay-Para, T. Graf, A.-G. Lemonnier, and E. Wais, Kopi Reference Manual, http://www.dms.at/kopi/docs/kopi.html (2001).
M. I. Gordon et al., A Stream Compiler for Communication-Exposed Architectures, in Proc. of the 10th Int. Conf. on Architectural Support for Programming Languages and Operating Systems, San Jose, CA (October 2002), URL http: //cag.1cs.mit.edu/commit/papers/02/streamit-asplos.pdf.
A.A. Lamb W. Thies S. Amarasinghe (June 2003) Linear Analysis and Optimization of Stream Programs Proc. of the SIGPLAN ’03 Conf. on Programming Language Design and Implementation San Diego, CA
N. Halbwachs P. Caspi P. Raymond D. Pilaud (September 1991) ArticleTitleThe synchronous data-flow programming language LUSTRE Proc. IEEE 79 IssueID9 1305–1320
G. Berry G. Gonthier (1992) ArticleTitleThe Esterel Synchronous Programming Language: Design, Semantics, Implementation Science of Computer Programming. 19 IssueID2 87–152
E.A. Lee (March 2001) Overview of the Ptolemy Project, UCB/ERL Technical Memorandum UCB/ERL M01/1, Dept. EECS University of California Berkeley, CA.
S. S. Bhattacharyya, P. K. Murthy, and E. A. Lee, Software Synthesis from Dataflow Graphs, Kluwer Academic Publishers (1996), URL http://www.wkap.nl/book.htm/0-7923-9722-3, 189 pages.
Kapasi U.J., Mattson P., Dally W.J., Owens J.D., Towles B. (2001). Stream Scheduling, in Proc. of the 3rd Workshop on Media and Streaming Processors, pp. 101–106
S. Seneff, Speech transformation system (spectrum and/or excitation) without pitch extraction, Master’s thesis, Massachussetts Institute of Technology (1980).
3rd Generation Partnership Project, 3GPP TS 25.201, V3.3.0, Technical Specification (March 2002).
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Amarasinghe, S., Gordon, M.l., Karczmarek, M. et al. Language and Compiler Design for Streaming Applications. Int J Parallel Prog 33, 261–278 (2005). https://doi.org/10.1007/s10766-005-3590-6
Issue Date:
DOI: https://doi.org/10.1007/s10766-005-3590-6