From d2a00992275e0fbeeb99865b515f62dac449a10f Mon Sep 17 00:00:00 2001 From: Tatu Peltola Date: Sat, 26 Mar 2016 11:44:28 +0200 Subject: [PATCH] Precalculate FFT window Before this calculating FFT window was taking much more CPU time than calculating the FFT itself. --- csdr.c | 5 ++++- libcsdr.c | 23 +++++++++++++++++++++++ libcsdr.h | 2 ++ 3 files changed, 29 insertions(+), 1 deletion(-) diff --git a/csdr.c b/csdr.c index 1ed5478..c8e8d90 100644 --- a/csdr.c +++ b/csdr.c @@ -1245,6 +1245,8 @@ int main(int argc, char *argv[]) FFT_PLAN_T* plan=make_fft_c2c(fft_size, windowed, output, 1, benchmark); if(benchmark) fprintf(stderr," done\n"); if(octave) printf("setenv(\"GNUTERM\",\"X11 noraise\");y=zeros(1,%d);semilogy(y,\"ydatasource\",\"y\");\n",fft_size); + float *windowt; + windowt = precalculate_window(fft_size, window); for(;;) { FEOF_CHECK; @@ -1263,7 +1265,8 @@ int main(int argc, char *argv[]) for(int i=0;i