A Haskell Compiler for Signal Transforms
Building a reusable, auto-tuning code generator from scratch is a challenging problem, requiring many careful design choices. We describe HSpiral, a Haskell compiler for signal transforms that builds on the foundational work of Spiral. Our design leverages many Haskell language features to ensure that our framework is reusable, flexible, and efficient. As well as describing the design of our system, we show how to extend it to support new classes of transforms, including the number-theoretic transform and a variant of the split-radix algorithm that results in reduced operation counts. We also show how to incorporate rewrite rules into our system to reproduce results from previous literature on code generation for the fast Fourier transform.
Although the Spiral project demonstrated significant advances in automatic code generation, it has not been widely used by other researchers. HSpiral is freely available under an MIT-style license, and we are actively working to turn it into a tool to further both our own research goals and to serve as a foundation for other research groups' work in developing new implementations of signal transform algorithms.
this URL might only work when visiting from a http://www.sigplan.org/ URL.
Tue 24 OctDisplayed time zone: Tijuana, Baja California change
15:30 - 17:00 | |||
15:30 25mTalk | A Haskell Compiler for Signal Transforms GPCE 2017 DOI Authorizer link | ||
15:55 25mTalk | Automatic Generation of Virtual Learning Spaces Driven by CaVa<sup>DSL</sup>: An Experience Report GPCE 2017 Ricardo Giuliani Martini University of Minho, Portugal, Pedro Rangel Henriques University of Minho, Portugal DOI Authorizer link | ||
16:20 25mTalk | Rewriting a Shallow DSL using a GHC Compiler Extension GPCE 2017 Mark Grebe University of Kansas, USA, David Young University of Kansas, USA, Andy Gill University of Kansas, USA DOI Authorizer link |