1 #include <lal/LALDatatypes.h>
6 if(
error != cudaSuccess)
15 if(
error != CUFFT_SUCCESS)
23 case CUFFT_INVALID_PLAN:
24 fprintf( stderr,
"%s:%d The plan handle is invalid\n",
file, line );
27 case CUFFT_INVALID_VALUE:
28 fprintf( stderr,
"%s:%d The input data and/or output data is not valid\n",
file, line );
31 case CUFFT_INTERNAL_ERROR:
32 fprintf( stderr,
"%s:%d Internal driver error is detected\n",
file, line );
35 case CUFFT_EXEC_FAILED:
36 fprintf( stderr,
"%s:%d CUFFT failed to execute the transform on GPU\n",
file, line );
39 case CUFFT_SETUP_FAILED:
40 fprintf( stderr,
"%s:%d CUFFT library failed to initialize\n",
file, line );
51 cufftComplex *
output,
const cufftReal *input,
52 cufftComplex *d_output, cufftReal *d_input,
UINT4 size)
54 UINT4 inputBytes = size *
sizeof(cufftReal);
55 UINT4 outputBytes = (size/2 + 1) *
sizeof(cufftComplex);
57 XLALCUDACHECK(cudaMemcpy( d_input, input, inputBytes, cudaMemcpyHostToDevice ));
67 cufftReal *
output,
const cufftComplex *input,
68 cufftReal *d_output, cufftComplex *d_input,
UINT4 size)
70 UINT4 inputBytes = (size/2 + 1) *
sizeof(cufftComplex);
71 UINT4 outputBytes = size *
sizeof(cufftReal);
73 XLALCUDACHECK(cudaMemcpy( d_input, input, inputBytes, cudaMemcpyHostToDevice ));
83 cufftComplex *
output,
const cufftComplex *input,
84 cufftComplex *d_output, cufftComplex *d_input,
87 UINT4 nBytes = size *
sizeof(cufftComplex);
89 XLALCUDACHECK(cudaMemcpy( d_input, input, nBytes, cudaMemcpyHostToDevice ));
int cudafft_execute_c2r(cufftHandle plan, cufftReal *output, const cufftComplex *input, cufftReal *d_output, cufftComplex *d_input, UINT4 size)
int cudafft_execute_c2c(cufftHandle plan, cufftComplex *output, const cufftComplex *input, cufftComplex *d_output, cufftComplex *d_input, INT4 direction, UINT4 size)
void XLALCudaFFTError(cufftResult_t error, const char *file, int line)
int cudafft_execute_r2c(cufftHandle plan, cufftComplex *output, const cufftReal *input, cufftComplex *d_output, cufftReal *d_input, UINT4 size)
void XLALCudaError(cudaError_t error, const char *file, int line)
#define XLALCUDAFFTCHECK(e)
static REAL8TimeSeries * error(const REAL8TimeSeries *s1, const REAL8TimeSeries *s0)
uint32_t UINT4
Four-byte unsigned integer.
int32_t INT4
Four-byte signed integer.
void output(int gps_sec, int output_type)