N = [512, 513, 514, 512, 65536]; M = [512, 513, 512, 514, 1]; rep = 40; infft = cell(1,length(N)); resfft = cell(1, length(N)); resfft2 = cell(1, length(N)); timfft = cell(1,length(N)); timfft2 = cell(1,length(N)); for i=1:length(N) a = randn(N(i),M(i)); infft{i} = a; fprintf("Testing fft(%5d,%5d) ", N(i), M(i)); fflush(stdout); # Call fft twice to ensure all variables initialized b = fft(a); b = fft(a); timfft{i} = 0; for j=1:rep t = cputime; b = fft(a); timfft{i} = timfft{i} + cputime - t; endfor resfft{i} = b; timfft{i} = timfft{i} / rep; fprintf("%5.2e sec\n", timfft{i}); fprintf("Testing fft2(%5d,%5d) ", N(i), M(i)); fflush(stdout); # Call fft2 twice to ensure all variables initialized b = fft2(a); b = fft2(a); timfft2{i} = 0; for j=1:rep t = cputime; b = fft2(a); timfft2{i} = timfft2{i} + cputime - t; endfor resfft2{i} = b; timfft2{i} = timfft2{i} / rep; fprintf("%5.2e sec\n", timfft2{i}); endfor fprintf("Saving Data "); fflush(stdout); save testfft.mat infft resfft timfft resfft2 timfft2 fprintf("done\n");