StreaMIT: A Language for Streaming Applications
Name
MIT-LCS-TM-620.pdf
Size
3.33 MB
Format
Adobe PDF
Checksum (MD5)
e1b8094703273ca1216a95f566f0d0b3
Author(s) • •
Thies, William F.
Karczmarek, Michael
Amarasinghe, Saman
Date Issued
August 2001
Series/Report no.
MIT-LCS-TM-620
Abstract
We characterize high-performance streaming applications as a new and distinct domain of programs that is becoming 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 analyses and optimizations. In this paper, we motivate, describe and justify the language features of StreaMIT, which include: a structured model of streams, a messaging system for control, a re-initialization mechanism, and a natural textual syntax. We also present a means of reasoning about time in terms of "information flow": a concept that we believe is fundamental to the streaming domain. Using this concept, we give a formal semantics for StreaMIT's messaging system, as well as a simple algorithm for detecting deadlock and buffer overlow.
Persistent DSpace Link