Changes between Version 14 and Version 15 of Examples/Fft2dHighpass
- Timestamp:
- May 17, 2010, 8:18:55 AM (15 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Examples/Fft2dHighpass
v14 v15 46 46 || Using FFTW using Estimate mode || 0.09 || [http://code.haskell.org/repa/repa-head/repa-examples/FFT/HighPass/legacy/c/FFTW.c FFTW.c] || 47 47 48 The vector version uses the same recursive radix-2 decimation in time (DIT) algorithm as the Repa version, but is not rank generalised. It applies a recursive 1d FFT to each row and then transposes the matrix, twice each. Recursive FFT algorithms tend to be slower than in-place ones because the data is copied into new vectors at each recursion. A 512 point FFT is built from two 256 point FFTs, which are build from 4 128 point FFTs and so on. The result of each FFT is a new vector which needs to be allocated and then filled.48 The vector version uses the same recursive radix-2 decimation in time (DIT) algorithm as the Repa version, but is not rank generalised. It applies a recursive 1d FFT to each row and then transposes the matrix, twice. Recursive FFT algorithms tend to be slower than in-place ones because the data is copied into new vectors at each recursion. A 512 point FFT is built from two 256 point FFTs, which are build from 4 128 point FFTs and so on. The result of each FFT is a new vector which needs to be allocated and then filled. 49 49 50 50 Jones's version also uses a 1d radix-2 DIT FFT kernel, but it first reorders the values then performs a in-place transform using three nested loops.