LAL  7.5.0.1-ec27e42
CudaFunctions.h
Go to the documentation of this file.
1 /* supress warnings from cuda headers */
2 #pragma GCC system_header
3 
4 #include <stdlib.h>
5 #include <stdio.h>
6 
7 #include <lal/LALDatatypes.h>
8 #include <cufft.h>
9 
12 void XLALCudaFree(void *);
13 
14 
15 #define XLALCUDACHECK(e) (XLALCudaError(e, __FILE__, __LINE__))
16 #define XLALCUDAFFTCHECK(e) (XLALCudaFFTError(e, __FILE__, __LINE__))
17 
18 #ifdef __cplusplus
19 extern "C" {
20 #endif
21 
22 void XLALCudaError(cudaError_t error, const char *file, int line);
23 
24 int cudafft_execute_r2c(cufftHandle plan,
25  cufftComplex *output, const cufftReal *input,
26  cufftComplex *d_output, cufftReal *d_input, UINT4 size);
27 
28 int cudafft_execute_c2r(cufftHandle plan,
29  cufftReal *output, const cufftComplex *input,
30  cufftReal *d_output, cufftComplex *d_input, UINT4 size);
31 
32 int cudafft_execute_c2c(cufftHandle plan,
33  cufftComplex *output, const cufftComplex *input,
34  cufftComplex *d_output, cufftComplex *d_input,
35  INT4 direction, UINT4 size);
36 
37 #ifdef __cplusplus
38 }
39 #endif
int cudafft_execute_c2r(cufftHandle plan, cufftReal *output, const cufftComplex *input, cufftReal *d_output, cufftComplex *d_input, UINT4 size)
Definition: CudaFFT.cu:66
void XLALCudaFree(void *)
Definition: CudaFunctions.c:29
int cudafft_execute_c2c(cufftHandle plan, cufftComplex *output, const cufftComplex *input, cufftComplex *d_output, cufftComplex *d_input, INT4 direction, UINT4 size)
Definition: CudaFFT.cu:82
REAL4 * XLALCudaMallocReal(UINT4)
Definition: CudaFunctions.c:7
int cudafft_execute_r2c(cufftHandle plan, cufftComplex *output, const cufftReal *input, cufftComplex *d_output, cufftReal *d_input, UINT4 size)
Definition: CudaFFT.cu:50
COMPLEX8 * XLALCudaMallocComplex(UINT4)
Definition: CudaFunctions.c:18
void XLALCudaError(cudaError_t error, const char *file, int line)
Definition: CudaFFT.cu:4
static REAL8TimeSeries * error(const REAL8TimeSeries *s1, const REAL8TimeSeries *s0)
uint32_t UINT4
Four-byte unsigned integer.
float complex COMPLEX8
Single-precision floating-point complex number (8 bytes total)
int32_t INT4
Four-byte signed integer.
float REAL4
Single precision real floating-point number (4 bytes).
void output(int gps_sec, int output_type)
Definition: tconvert.c:440