Language and Compiler Design for Streaming Applications - Amarasinghe, Saman; Gordon, Michael I.; Karczmarek, Michal; Lin, Jasper; Maze, David; Rabbah, Rodric M.; Thies, Bill (International Journal of Parallel Programming, 2005)
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.