ScalaPipe: A Streaming Application Generator
Joseph G. Wingbermuehle, Roger D. Chamberlain, Ron K. Cytron · 2012
Summary form only given. ScalaPipe is a streaming application generator for heterogeneous platforms. By using a collection of domain-specific languages (DSLs) embedded in the Scala programming language, ScalaPipe allows creation of streaming applications that can run on a variety of hardware, including traditional processors, graphics processors, and field-programmable gate arrays (FPGAs). Its application DSL allows specification of the application topology and resource mapping. Its block DSL allows the authoring of implementations for processing kernels, or blocks, which are used in the streaming application. ScalaPipe makes it easy to generate, modify, and instrument large, complex topologies and resource mappings while also exposing optimization opportunities.