#include #include #include #include #include #include #include "matrixlib.h" #include "tictoc.h" void dft(int N,complex x[N],complex b[N]){ bzero(b,sizeof(complex)*N); cilk_for(int k=0;k8){ sfft(N,s,x,b); return; } if(N==1) { b[0]=x[0]; return; } if(N%2){ printf("N not divisible by 2!\n"); exit(1); } int K=N/2; cilk_spawn fft(K,2*s,&x[0],&b[0]); fft(K,2*s,&x[s],&b[K]); cilk_sync; cilk_for(int k=0;k