A rewriting system for the vectorization of signal transforms

  • Authors:
  • Franz Franchetti;Yevgen Voronenko;Markus Püschel

  • Affiliations:
  • Electrical and Computer Engineering, Carnegie Mellon University, Pittsburgh, PA;Electrical and Computer Engineering, Carnegie Mellon University, Pittsburgh, PA;Electrical and Computer Engineering, Carnegie Mellon University, Pittsburgh, PA

  • Venue:
  • VECPAR'06 Proceedings of the 7th international conference on High performance computing for computational science
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

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 signal 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.