fft#
-
nvmath.
device. fft(*, compiler=None, **kwargs)[source]# 创建一个
FFTOptions对象,该对象封装了一个已编译且可直接使用的 FFT 设备函数。- 参数:
size (int) – 要计算的 FFT 的大小。
precision (str) – 计算精度,指定为 numpy 浮点数据类型,目前支持
numpy.float16、numpy.float32和numpy.float64。fft_type (str) – 指定 FFT 操作类型的字符串,可以是
'c2c','c2r'或'r2c'。compiler (str) – 指定设备代码编译器的字符串,目前支持
None(默认) 和'Numba'code_type (CodeType) – 目标 GPU 代码和计算能力。如果编译器指定为
'Numba',则为可选参数。execution (str) – 指定执行方法的字符串,可以是
'Block'或'Thread'。direction (str) – 指定 FFT 方向的字符串,可以是
'forward'或'inverse'。 如果未提供,如果指定复数到实数 FFT,则默认为'forward',如果指定实数到复数 FFT,则默认为'inverse'。ffts_per_block (int) – 每个 CUDA 代码块计算的 FFT 数量,可选。 默认值为 1。 或者,如果提供
'suggested',则会设置为建议值elements_per_thread (int) – 每个线程的元素数量,可选。 默认值为 1。 或者,如果提供
'suggested',则会设置为建议值。real_fft_options (dict) – 一个字典,用于指定实数 FFT 操作的选项,可选。 用户可以指定以下选项
dictionary (在) –
'complex_layout',目前支持'natural'、'packed'和'full'。'real_mode',目前支持'normal'和'folded'。
另请参阅
FFTOptions的属性提供了与 CUDA C++ cuFFTDx API 的 1:1 映射。 有关更多详细信息,请参阅 cuFFTDx 文档。示例
示例可以在 nvmath/examples/device 目录中找到。