[发明专利]一种基于龙芯3B的FFTW3优化方法有效
申请号: | 201410153672.6 | 申请日: | 2014-04-16 |
公开(公告)号: | CN103902506B | 公开(公告)日: | 2017-02-15 |
发明(设计)人: | 顾乃杰;王小乐;张明;任开新 | 申请(专利权)人: | 中国科学技术大学先进技术研究院 |
主分类号: | G06F17/14 | 分类号: | G06F17/14 |
代理公司: | 安徽省合肥新安专利代理有限责任公司34101 | 代理人: | 何梅生 |
地址: | 230088 安徽*** | 国省代码: | 安徽;34 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 fftw3 优化 方法 | ||
技术领域
本发明属于电数字数据处理技术领域,具体涉及龙芯3B处理器上FFTW3实现优化方法。
背景技术
龙芯3B是首款国产商用8核处理器,主频达到1GHz,支持向量运算加速,峰值计算能力达到128GFLOPS,具有很高的性能功耗比。龙芯3B主要用于高性能计算机、高性能服务器、数字信号处理等领域。FFTW(the Faster Fourier Transform in the West)是一个快速计算离散傅里叶变换的标准C语言程序集,其由MIT的M.Frigo和S.Johnson开发,可计算一维或多维实数和复数数据以及任意规模的离散傅里叶变换(DFT,Discrete Fourier Transform)。FFTW3是在FFTW的基础上进行二次开发而成的新版本,新增了对共享和分布式存储系统的并行变换,可自动适应你的机器,缓存,存储器大小,寄存器个数。FFTW3通常比目前其它开源的傅里叶变换程序运行效率高,其最新版本为fftw-3.3.3。FFTW3的高效实现是通过将规模大的离散傅里叶变换分解为多个小规模的离散傅里叶变换,其核心代码也就是完成小规模离散傅里叶变换,这些代码比较短,采用汇编语言实现将会获得更好的性能,龙芯3B处理有132个向量寄存器,能够保证其汇编实现对寄存器数量的需要。
目前实际应用的FFTW3并没有针对龙芯3B处理器进行优化,因此通用的FFTW3单纯移植在龙芯3B处理器上不能较好地发挥龙芯3B处理器的特性。
发明内容
本发明是为避免上述现有技术所存在的不足之处,提供基于龙芯3B的FFTW3优化方法,以期提高FFTW3在龙芯3B处理器上的运行性能,从而达到在龙芯3B处理器上FFTW3的高效实现。
本发明为解决以上技术问题采用如下方案:
本发明一种基于龙芯3B的FFTW3优化方法的特点是:所述优化方法是利用向量指令方法、Cooley-Tukey算法以及实部和虚部单独计算处理方法,分别按如下情况对离散傅里叶变换函数进行优化;
情况一:在计算规模为和数的复数离散傅里叶变换中利用所述向量指令方法和Cooley-Tukey算法进行优化;
情况二:在计算实数离散傅里叶变换中利用所述向量指令方法和实部和虚部单独计算处理方法进行优化;
所述向量指令方法是指使用所定义的128位访存指令和计算指令对所述离散傅里叶变换函数中的输入参数分别进行访存和2点FFT计算:
所述128位访存指令定义为:
读取指令VLDC1vd,addr,用于读取寻址地址寄存器addr中的128位数据到向量寄存器vd中;
存放指令VLSC1vd,addr,用于将寄存器vd中低128位数据存放到地址寄存器addr中;
所述计算指令定义为:
低128位2点FFT计算指令对VMULADD vd,vs,vt,vr和VMULADDL vd,vs,vt,vr,用于共同完成向量双精度FFT运算低128位数据计算;
高128位2点FFT计算指令对VMULADDH vd,vs,vt,vr和VMULADDLH vd,vs,vt,vr,用于共同完成向量双精度FFT运算高128位数据计算;
所述Cooley-Tukey算法是按如下步骤进行:
步骤1:利用式(1)和式(2)对所述离散傅里叶变换函数中计算规模N进行索引变换:
n=N2×n1+n2 式(1)
K=k1+N1×k2 式(2)
式(1)和式(2)中,N1和N2为所述计算规模N的因子,且满足N1×N2=N;参数n的值域为[0,N-1],参数K的值域为[0,N-1],参数n1和参数k1的值域都为[0,N1-1],参数n2和参数k2的值域都为[0,N2-1];
步骤2:利用式(3)进行离散傅里叶变换获得离散傅里叶变换的输出值X(k1+N1k2):
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学技术大学先进技术研究院,未经中国科学技术大学先进技术研究院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410153672.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:桡动脉穿刺支撑垫
- 下一篇:一种无线数据移动查房车