#include #include #include #include #include int main() { cufftHandle plan; #ifdef FAIL // fails int n = 1001472; #else // works int n = 1040384; #endif cuFloatComplex *in, *out; int loop=5; int i; cudaMallocManaged(&in, n*sizeof(cuFloatComplex)); cudaMallocManaged(&out, n*sizeof(cuFloatComplex)); cufftPlan1d(&plan, n, CUFFT_C2C, 1); if (plan== 0) { fprintf(stderr, "failed to create FFT plan.\n"); return 1; } //cufftSetStream(plan, cudaStreamPerThread); // DC signal for (i=0; i