Operator language: A program generation framework for fast kernels

36Citations
Citations of this article
20Readers
Mendeley users who have this article in their library.

This article is free to access.

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.

Cite

CITATION STYLE

APA

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.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free