Title :
Feldspar: A domain specific language for digital signal processing algorithms
Author :
Axelsson, Emil ; Claessen, Koen ; Dévai, Gergely ; Horváth, Zoltán ; Keijzer, Karin ; Lyckegård, Bo ; Persson, Anders ; Sheeran, Mary ; Svenningsson, Josef ; Vajda, András
Author_Institution :
Chalmers Univ. of Technol., Gothenburg, Sweden
Abstract :
A new language, Feldspar, is presented, enabling high-level and platform-independent description of digital signal processing (DSP) algorithms. Feldspar is a pure functional language embedded in Haskell. It offers a high-level dataflow style of programming, as well as a more mathematical style based on vector indices. The key to generating efficient code from such descriptions is a high-level optimization technique called vector fusion. Feldspar is based on a low-level, functional core language which has a relatively small semantic gap to machine-oriented languages like C. The core language serves as the interface to the back-end code generator, which produces C. For very small examples, the generated code performs comparably to hand-written C code when run on a DSP target. While initial results are promising, to achieve good performance on larger examples, issues related to memory access patterns and array copying will have to be addressed.
Keywords :
data flow analysis; functional languages; machine oriented languages; optimisation; signal processing; Feldspar; digital signal processing; domain specific language; functional language; high-level dataflow; high-level optimization; machine-oriented languages; vector fusion; Arrays; DSL; Digital signal processing; Generators; Indexes; Kernel; Optimization;
Conference_Titel :
Formal Methods and Models for Codesign (MEMOCODE), 2010 8th IEEE/ACM International Conference on
Conference_Location :
Grenoble
Print_ISBN :
978-1-4244-7885-9
Electronic_ISBN :
978-1-4244-7886-6
DOI :
10.1109/MEMCOD.2010.5558637