We present a rewriting system that automatically vectorizes signal transform algorithms at a high level of abstraction. The input to the system is a transform algorithm given as a formula in the well-known Kronecker product formalism. The output is a "vectorized" formula, which means it consists exclusively of constructs that can be directly mapped into short vector code. This approach obviates compiler vectorization, which is known to be limited in this domain. We included the formula vectorization into the Spiral program generator for signai transforms, which enables us to generate vectorized code and further optimize for the memory hierarchy through search over alternative algorithms. Benchmarks for the discrete Fourier transform (DFT) show that our generated floating-point code is competitive with and that our fixed-point code clearly outperforms the best available libraries. © Springer-Verlag Berlin Heidelberg 2007.
CITATION STYLE
Franchetti, F., Voronenko, Y., & Püschel, M. (2007). A rewriting system for the vectorization of signal transforms. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 4395 LNCS, pp. 363–377). Springer Verlag. https://doi.org/10.1007/978-3-540-71351-7_28
Mendeley helps you to discover research relevant for your work.