Author_Institution :
Dept. of Electr. & Comput. Eng., Carnegie Mellon Univ., Pittsburgh, PA, USA
Abstract :
I introduce SPIRAL (www.spiral.net), a generator of libraries of linear signal processing algorithms like linear transforms, including the discrete Fourier transform, the discrete cosine transform, filters, or wavelets, as well as applications lke JPEG2000, Viterbi decoding, and SAR image formation algorithms. SPIRAL is a new breed of intelligent compilers that couples domain knowledge, computer architecture modeling, machine learning methodologies, and compiler technology to generate automatically highly tuned SW codes and very efficient HW IP cores. SPIRAL produces automatically C code with embedded vector and parallel instructions for multicore or multiprocessor architectures, or netlists for FPGA implementations. SPIRAL can optimize for or trade among a range of criteria including runtime, power/energy, accuracy, or area. SPIRAL has been benchmarked against expert hand tuned implementations and has been licensed as a tool by INTEL.
Keywords :
knowledge based systems; program compilers; signal processing; software reviews; SPIRAL; computer architecture modeling; intelligent compilers; linear signal processing algorithms; machine learning; parallel instruction; vector instructions; Algebra; Computer architecture; Discrete Fourier transforms; Discrete cosine transforms; Discrete wavelet transforms; Fourier transforms; Libraries; Signal generators; Signal processing algorithms; Spirals; Drexel (CS); SPIRAL involves a larger team of faculty and students from CMU; UIUC (CS);