博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
GPU FFT
阅读量:6084 次
发布时间:2019-06-20

本文共 1030 字,大约阅读时间需要 3 分钟。

hot3.png

最近用到FFT了。cuda里有GPUFFT的函数,不过是C的。最近找了个封装,还挺好用。具体效率没测过,主要是内存和显存之间来回传递比较费时间吧。代码如下:

CudafyModule km = CudafyTranslator.Cudafy();             GPGPU gpu = CudafyHost.GetDevice(CudafyModes.Target);            gpu.LoadModule(km);             ComplexD[] cm = new ComplexD[4];            cm[0] = new ComplexD(1.5, 1);            cm[1] = new ComplexD(2.5, 2);            cm[2] = new ComplexD(3.5, 3);            cm[3] = new ComplexD(4.5, 4);            ComplexD[] dev_cm = gpu.CopyToDevice(cm);             ComplexD[] ifftData = new ComplexD[4];            ComplexD[] dev_ifftData = gpu.CopyToDevice(ifftData);             Cudafy.Maths.FFT.GPGPUFFT gpuFFT = Cudafy.Maths.FFT.GPGPUFFT.Create(gpu);            Cudafy.Maths.FFT.FFTPlan1D fft_1d = gpuFFT.Plan1D(Cudafy.Maths.FFT.eFFTType.Complex2Complex, Cudafy.Maths.FFT.eDataType.Double, 4, 1);             fft_1d.Execute
(dev_cm, dev_ifftData, true); gpu.CopyFromDevice(dev_ifftData, ifftData);  gpu.FreeAll();

转载于:https://my.oschina.net/lidayong/blog/106764

你可能感兴趣的文章
jQuery Form
查看>>
从JVM的角度看JAVA代码--代码优化
查看>>
Ubuntu apt 使用代理
查看>>
jquery的confirm插件介绍
查看>>
PHP HTML混写,PHP中把大块HTML文本直接赋值给字符串变量的方法
查看>>
hadoop常见算法(持续更新)
查看>>
-1-2 java 面向对象基本概念 封装继承多态 变量 this super static 静态变量 匿名对象 值传递 初始化过程 代码块 final关键字 抽象类 接口 区别 多态 ...
查看>>
Latex: 参考文献双栏对齐
查看>>
在Xamarin.iOS项目中使用预设数据库
查看>>
朱晔的互联网架构实践心得S1E8:三十种架构设计模式(下)
查看>>
【转载】Nginx 学习笔记(十一)nginx下安装配置naxsi waf防火墙(附完整编译、配置)...
查看>>
Session,有没有必要使用它?
查看>>
Version 2.6 (R2007b) Mapping Toolbox Software(matlab 角度转换函数)
查看>>
深入Linux设备驱动程序内核机制
查看>>
RIM警告黑莓手机容易被黑 已发安全补丁
查看>>
无法对 数据库'XXXXX' 执行 删除,因为它正用于复制
查看>>
转 Storm JAVA_HOME is incorrectly set.
查看>>
Objective-c开发中混合使用ARC
查看>>
局域网通过ip查mac地址、通过mac地址查ip方法
查看>>
Linux开机启动时执行脚本的方法
查看>>