Table of Contents

Class FftOptions

Namespace
NVMathNet.Fft
Assembly
NVMath.Net.dll

Options controlling the behaviour of an NVMathNet.Fft.Fft operation.

public sealed class FftOptions

Inheritance

Inherited Members

Properties

Blocking

When true, execute calls block until the GPU operation is complete. When false (default), execute launches the kernel and returns immediately. Use NVMathNet.Fft.Fft.SynchronizeAsync(System.Threading.CancellationToken) to wait for completion.

public bool Blocking { get; set; }

Property Value

bool

DeviceId

Reserved; currently not used by the library (operands must already be on the device). CUDA device to use when input resides on the host. Default: device 0.

public int DeviceId { get; set; }

Property Value

int

FftType

The type of FFT to perform. null means auto-detect from the input element type: NVMathNet.Fft.FftType.C2C for complex input, NVMathNet.Fft.FftType.R2C for real input.

public FftType? FftType { get; set; }

Property Value

FftType?

InPlace

If true, the result overwrites the input buffer. Supported for NVMathNet.Fft.FftType.C2C only: in-place real transforms need a padded real layout, so R2C/C2R with this option throw System.NotSupportedException. Default: false.

public bool InPlace { get; set; }

Property Value

bool

LastAxisParity

Reserved; currently not used by the library (the logical size of a C2R transform is given by the output shape). For C2R FFTs: whether the logical last-axis size is even or odd. Default: NVMathNet.Fft.LastAxisParity.Even.

public LastAxisParity LastAxisParity { get; set; }

Property Value

LastAxisParity

Normalization

Scaling applied to the output after each transform. cuFFT itself never scales, so NVMathNet.Fft.FftNormalization.None (the default) leaves a forward+inverse round trip multiplied by the signal size N.

public FftNormalization Normalization { get; set; }

Property Value

FftNormalization