Title
StagedSAC: a case study in performance-oriented DSL development
Abstract
Domain-specific languages (DSLs) can bridge the gap between high-level programming and efficient execution. However, implementing compiler tool-chains for performance oriented DSLs requires significant effort. Recent research has produced methodologies and frameworks that promise to reduce this development effort by enabling quick transition from library-only, purely embedded DSLs to optimizing compilation. In this case study we report on our experience implementing a compiler for StagedSAC. StagedSAC is a DSL for arithmetic processing with multidimensional arrays modeled after the stand-alone language SAC (Single Assignment C). The main language feature of both SAC and StagedSAC is a loop construction that enables high-level and concise implementations of array algorithms. At the same time, the functional semantics of the two languages allow for advanced compiler optimizations and parallel code generation. We describe how we were able to quickly evolve from a pure library DSL to a performance-oriented compiler with a good speedup and only minor syntax changes using the technique of Lightweight Modular Staging. We also describe the optimizations we perform to obtain fast code and how we plan to generate parallel code with minimal effort using the Delite framework.
Year
DOI
Venue
2012
10.1145/2103746.2103762
PEPM
Keywords
Field
DocType
compiler tool-chains,minimal effort,fast code,advanced compiler optimizations,performance-oriented dsl development,parallel code generation,parallel code,development effort,case study,significant effort,embedded dsls,performance-oriented compiler,domain specific language,code generation,optimizing compiler,staging,dsl,domain specific languages,optimization,compiler optimization
Inline expansion,Interprocedural optimization,Functional compiler,Programming language,Dynamic compilation,Computer science,Parallel computing,Compiler correctness,Theoretical computer science,Code generation,Compiler,Compiler construction
Conference
Citations 
PageRank 
References 
4
0.41
14
Authors
5
Name
Order
Citations
PageRank
Vlad Ureche11457.78
Tiark Rompf274345.86
Arvind K. Sujeeth350220.58
Hassan Chafi4111861.11
Martin Odersky52261170.39