#include #include using namespace std; #include "cuda_runtime.h" #include "device_launch_parameters.h" #include "cufft.h" #ifndef CUDA_HANDLE_ERROR_H #define CUDA_HANDLE_ERROR_H //handle error macro static void HandleError( cudaError_t err, const char *file, int line ) { if (err != cudaSuccess) { //FILE* outfile = fopen("cudaErrorLog.txt", "w"); //fprintf(outfile, "%s in %s at line %d\n", cudaGetErrorString( err ), file, line ); //fclose(outfile); printf("%s in %s at line %d\n", cudaGetErrorString( err ), file, line ); //exit( EXIT_FAILURE ); } } #define HANDLE_ERROR( err ) (HandleError( err, __FILE__, __LINE__ )) static void CufftError( cufftResult err ) { if (err != CUFFT_SUCCESS) { if(err == CUFFT_INVALID_PLAN) cout<<"The plan parameter is not a valid handle."<