Optimizing data permutations for SIMD devices
The Design and Implementation of FFTW3