Abstract
We present the Operator Language (OL), a framework to automatically generate fast numerical kernels. OL provides the structure to extend the program generation system Spiral beyond the transform domain. Using OL, we show how to automatically generate library functionality for the fast Fourier transform and multiple non-transform kernels, including matrix-matrix multiplication, synthetic aperture radar (SAR), circular convolution, sorting networks, and Viterbi decoding. The control flow of the kernels is data-independent, which allows us to cast their algorithms as operator expressions. Using rewriting systems, a structural architecture model and empirical search, we automatically generate very fast C implementations for state-of-the-art multicore CPUs that rival hand-tuned implementations. © IFIP International Federation for Information Processing 2009.
Author supplied keywords
Cite
CITATION STYLE
Franchetti, F., De Mesmay, F., McFarlin, D., & Püschel, M. (2009). Operator language: A program generation framework for fast kernels. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 5658 LNCS, pp. 385–409). https://doi.org/10.1007/978-3-642-03034-5_18
Register to see more suggestions
Mendeley helps you to discover research relevant for your work.