Namespace ManagedCuda.CudaFFT
Classes
CudaFFTException
An CudaFFTException is thrown, if any wrapped call to the CUFFT-library does not return Success.
CudaFFTNativeMethods
C# wrapper for the NVIDIA CUFFT API (--> cufft.h)
CudaFFTPlan1D
Creates a 1D FFT plan configuration for a specified signal size and data
type. The batch
input parameter tells CUFFT how many 1D
transforms to configure.
CudaFFTPlan2D
Creates a 2D FFT plan configuration according to specified signal sizes
and data type. This class is the same as CudaFFTPlan1D except that
it takes a second size parameter, ny
, and does not support batching.
CudaFFTPlan3D
Creates a 3D FFT plan configuration according to specified signal sizes
and data type. This class is the same as CudaFFTPlan2D except that
it takes a third size parameter nz
.
CudaFFTPlanMany
Creates a FFT plan configuration of dimension rank, with sizes
specified in the array n
. The batch
input parameter tells CUFFT how
many transforms to configure in parallel. With this function, batched
plans of any dimension may be created.
Input parameters inembed
, istride
, and idist
and output
parameters onembed
, ostride
, and odist
will allow setup of noncontiguous
input data in a future version (Beta status in version 4.0). Note that for CUFFT 3.0,
these parameters are ignored and the layout of batched data must be
side‐by‐side and not interleaved.
CudaFFTPlanMany64
Creates a FFT plan configuration of dimension rank, with sizes
specified in the array n
. The batch
input parameter tells CUFFT how
many transforms to configure in parallel. With this function, batched
plans of any dimension may be created.
Input parameters inembed
, istride
, and idist
and output
parameters onembed
, ostride
, and odist
will allow setup of noncontiguous
input data in a future version (Beta status in version 4.0). Note that for CUFFT 3.0,
these parameters are ignored and the layout of batched data must be
side‐by‐side and not interleaved.
Structs
cufftHandle
cufftHandle is a handle type used to store and access CUFFT plans.
Enums
Compatibility
Certain R2C and C2R transforms go much more slowly when FFTW memory layout and behaviour is required. The default is "best performance", which means not-compatible-with-fftw. Use the cufftSetCompatibilityMode(cufftHandle, Compatibility) API to enable exact FFTW-like behaviour.
cufftResult
CUFFT API function return values
cufftType
CUFFT supports the following transform types
TransformDirection
CUFFT transform directions