Comparison of Gwyddion 2.7 simpleFFT transform speed with FFTW3.1 in using
ESTIMATE
plans (FFTs are typically one-shot in Gwyddion) and
FFT hum (the old Gwyddion FFT procedure).
The test was performed on Athlon64 with -O2
optimization,
with split real and imaginary arrays (as is normal in Gwyddion) of stride 1.
Repeated FFTW3 means a plan was created and then executed many times (how
many exactly depended on the transform size, larger ones were executed fewer
times to keep the testing time finite), one-shot FFTW3 means a plan was
created, executed and destroyed for each transform. FFT hum has no planning
and simpleFFT has a very simple fixed planning method, executed each
time.
Normalized execution time is the execution time divided by n log(n), where n is the transform size. This nicely visualizes overheads and failures to scale.