cufft相关内容

CUFFT的计算性能

我在划分为多个 GPU 的块 (N*N/p) 上运行 CUFFT,我对计算性能有疑问.首先,关于我是如何做到的: 向每个 GPU 发送 N*N/p 个块 对 p 个 GPU 中的每一行进行批量 1-D FFT 将 N*N/p 个块返回主机 - 对整个数据集执行转置 同上步骤 1 同上第 2 步 Gflops = ( 1e-9 * 5 * N * N *lg(N*N) )/执行时 ..
发布时间:2022-01-10 15:44:18 其他开发

CUFFT:如何计算俯仰指针的fft?

我正在尝试使用CUFFT计算图像的fft.似乎CUFFT仅提供分配有cudaMalloc的fft普通设备指针. 我的输入图像是使用cudaMallocPitch分配的,但是没有用于处理图像指针间距的选项. 当前,我必须删除行的对齐方式,然后执行fft,然后将结果复制回倾斜的指针.我当前的代码如下: void fft_device(float* src, cufftComplex* ..
发布时间:2020-06-26 12:53:13 其他开发

从CUDA FFT获取相位图像

我正在尝试对2D图像应用cuFFT(正向然后反向).我需要将实际部分和复杂部分作为单独的输出,以便可以计算相位和幅度图像.我无法重新创建输入图像,并且还返回了非零相位.特别是,我不确定是否可以从缩小后的cuFFT复合输出正确创建全尺寸图像,该输出显然仅存储光谱的左侧.这是我当前的代码: // Load image cv::Mat_ img; img = cv::imread(p ..
发布时间:2020-05-20 21:17:57 其他开发

错误的结果cufft 3D就地

我写,因为我面对的问题与袖口3D转换就地,而我没有问题的外部版本。我试图关注Robert Crovella的回答这里,但是我没有获得正确的结果,当我做FFT + IFT。 这是我的代码: #include #include #include #include #includ ..
发布时间:2017-03-05 19:26:49 其它硬件开发

关于计划在cuFFT中的重用

这可能看起来像一个简单的问题,但 cufft 的用法对我并不是很清楚。 是:以下哪个实现是正确的? 1) //循环调用 cufftPlan3d(plan1,x,y,z); cufftexec(plan1,data1); cufftexec(plan1,data2); cufftexec(plan1,data3); destroyplan(plan1) ..
发布时间:2017-03-05 15:25:27 其它硬件开发

双精度CUFFT

我遇到了一些CUDAs FFT库的问题。 我声明输入为cuDoubleComplex,但是编译器返回这个类型与类型的参数不兼容的错误cufftComplex。通过互联网进行一些搜索后,我发现了文件cufft.h,其中有 typedef cuComplex cufftComplex; 行。我的问题是,在库cuComplex.h中,显然cuComplex有一个浮点精度( typedef cuFl ..
发布时间:2017-03-05 15:19:07 其它硬件开发

是否可以调用设备函数中的cufft库调用?

我使用cuFFT库调用在主机代码他们工作正常,但我想从内核调用cuFFT库。早期版本的CUDA没有这种支持,但使用动态并行性是可能的? 如果有任何关于如何实现这一点的示例,这将是巨大的。 解决方案 尽管在Kepler(cc 3.5)卡上引入了动态并行性,cuFFT仍然是一个主机API,目前还没有办法使用cuFFT在设备代码中创建或执行FFT操作。 ..
发布时间:2017-03-04 15:58:02 其它硬件开发

CUFFT |不能弄清楚一个简单的例子

我一直在努力的整天,试图使一个基本的CUFFT示例工作正常。但我遇到一个小问题,我不能确定。基本上我有一个线性二维数组vx x和y坐标。然后我只是计算一个向前然后向后CUFFT(就地),那么简单。然后我复制回数组vx,通过NX * NY 对其进行标准化,然后显示。 define NX 32 #define NY 32 #define LX(2 * M_PI) #define LY ..
发布时间:2017-03-04 15:47:08 其它硬件开发

在GPU上运行FFTW,使用CUFFT

我有一个基本的C ++ FFTW实现,如下所示: for(int i = 0; i //声明指针并计划 fftw_complex * in,* out; fftw_plan p; //分配 in =(fftw_complex *)fftw_malloc(sizeof(fftw_complex)* N); out =(fftw_complex *)fftw_malloc ..
发布时间:2017-03-04 15:44:09 其它硬件开发

不同于cuda FFT和iFFT后的图像

我想用CUDA对2D图像进行FFT - >斜坡滤波 - > iFFT。首先,作为一个测试,我试图做FFT和iFFt没有任何过滤器。在FFT和iFFT之后,图像看起来是相同的,但是在操作之前,图像像素值在0-255之间,并且在FFT和iFFT之后,图像包含〜10 ^ 7个值。 测试图像包含浮点数,尺寸为512 x 360.我使用“cuffSinogram”函数创建fft,使用“cuInvers ..
发布时间:2017-03-04 13:57:47 其它硬件开发

计算CUFFT的性能

我运行CUFFT上的块(N * N / p)分为多个GPU,我有一个问题,计算的性能。首先,了解我的操作方式: 向每个GPU发送N * N / p个块 对p个GPU中的每一行进行成批的1-D FFT 获取N * N / p个块返回主机 - 对整个数据集执行转置 同上第1步 同上第2步 Gflops =(1e-9 * 5 * N * N * lg(N * N))/执行时间 ..
发布时间:2017-03-04 11:59:57 其它硬件开发

是否有可能重叠分批的FFT与CUDA的cuFFT库和cufftPlanMany?

我试图并行化称为Chromaprint的声学指纹库的FFT变换。它的工作原理是“将原始音频分成许多重叠帧并对它们应用傅里叶变换”。 Chromaprint使用4096的帧大小,具有2/3重叠。例如,第一帧由元素[0 ... 4095]组成,然后第二帧是像[1366 .. 5462]。 对于cufftPlanMany,I知道你可以指定大小为4096的批次,这将执行批次[0 ... 4095], ..
发布时间:2016-11-02 03:06:55 C/C++开发