The SPIRAL system (www.spiral.net) is a tool for automatically deriving, implementing and optimizing Digital Signal Processing (DSP) algorithms, in particular fast transform algorithms such as the fast Fourier transform. SPIRAL is capable of generating optimized implementations on a variety of platforms including SSE, multicore, Cell, GPU, distributed memory parallel processors, and FPGA, and has produced some of the fastest implementations of these algorithms on these platforms (SPIRAL is used by Intel in the implementation of their MKL and IPP libraries). SPIRAL uses a domain specific language, based on an algebraic formulation of DSP algorithms, and rewrite rules to generate a large number of implementations and uses intelligent search to find fast implementations. This talk provides an overview of automated generation of DSP algorithms using the SPIRAL system, briefly discusses the use of algebraic techniques in the generation of DSP algorithms, and ends with a discussion of extensions of SPIRAL that can be used for more general algorithms.

References in zbMATH (referenced in 48 articles , 1 standard article )

Showing results 1 to 20 of 48.
Sorted by year (citations)

1 2 3 next

  1. Barthels, Henrik; Psarras, Christos; Bientinesi, Paolo: Linnea. Automatic generation of efficient linear algebra programs (2021)
  2. Gadioli, Davide; Vitali, Emanuele; Palermo, Gianluca; Silvano, Cristina: mARGOt: a dynamic autotuning framework for self-aware approximate computing (2019)
  3. Andreatto, B.; Cariow, A.: Automatic generation of fast algorithms for matrix-vector multiplication (2018)
  4. Doliskani, Javad; Giorgi, Pascal; Lebreton, Romain; Schost, Eric: Simultaneous conversions with the residue number system using linear algebra (2018)
  5. Homolya, Miklós; Mitchell, Lawrence; Luporini, Fabio; Ham, David A.: TSFC: a structure-preserving form compiler (2018)
  6. Tan, Guangming; Liu, Junhong; Li, Jiajia: Design and implementation of adaptive SpMV library for multicore and many-core architecture (2018)
  7. Nelson, Thomas; Belter, Geoffrey; Siek, Jeremy G.; Jessup, Elizabeth; Norris, Boyana: Reliable generation of high-performance matrix algebra (2015)
  8. Van Zee, Field G.; van de Geijn, Robert A.: BLIS: a framework for rapidly instantiating BLAS functionality (2015)
  9. Fabio Luporini, Ana Lucia Varbanescu, Florian Rathgeber, Gheorghe-Teodor Bercea, J. Ramanujam, David A. Ham, Paul H.J. Kelly: COFFEE: an Optimizing Compiler for Finite Element Local Assembly (2014) arXiv
  10. Meng, Lingchuan; Johnson, Jeremy: High performance implementation of the TFT (2014)
  11. Meng, Lingchuan; Johnson, Jeremy: Automatic parallel library generation for general-size modular FFT algorithms (2013)
  12. Jan, Yahya; Jóźwiak, Lech: Scalable communication architectures for massively parallel hardware multi-processors (2012) ioport
  13. Kaltofen, Erich L.: The “Seven Dwarfs” of symbolic computation (2012)
  14. Wernsing, John R.; Stitt, Greg: Elastic computing: A portable optimization framework for hybrid computers (2012) ioport
  15. Carette, Jacques; Kiselyov, Oleg: Multi-stage programming with functors and monads: eliminating abstraction overhead from generic code (2011)
  16. D’Alberto, Paolo; Bodrato, Marco; Nicolau, Alexandru: Exploiting parallelism in matrix-computation kernels for symmetric multiprocessor systems: matrix-multiplication and matrix-addition algorithm optimizations by software pipelining and threads allocation (2011)
  17. Fabregat-Traver, Diego; Bientinesi, Paolo: Knowledge-based automatic generation of partitioned matrix expressions (2011)
  18. Genovese, Luigi; Videau, Brice; Ospici, Matthieu; Deutsch, Thierry; Goedecker, Stefan; Méhaut, Jean-François: Daubechies wavelets for high performance electronic structure calculations: the BigDFT project (2011)
  19. Kalinnik, Natalia; Korch, Matthias; Rauber, Thomas: An efficient time-step-based self-adaptive algorithm for predictor-corrector methods of Runge-Kutta type (2011)
  20. Sheeran, Mary: Functional and dynamic programming in the design of parallel prefix networks (2011)

1 2 3 next

Further publications can be found at: http://www.spiral.net/publications/publ-topic.html