面向天文信号处理的 gpu 加速与实现

15
三三三三 三三三三 三三 三三

Upload: fergus

Post on 26-Jan-2016

137 views

Category:

Documents


9 download

DESCRIPTION

面向天文信号处理的 GPU 加速与实现. 三峡大学. 徐洋. 报告内容. 1 、射电信号交叉关联 GPU 加速. 2 、银河系整体消光 —— 贝叶斯定理 GPU 加速. 射电信号交叉关联 GPU 加速. 研究背景. GPU 的性价比越来越高,能耗越来越低,随着官方开发工具的逐步升级,学习及开发难度逐渐降低。. 射电干涉仪阵列规模的不断扩大带来了海量的数据处理需求,该需求的实时处理对传统解决方案的性能和成本等带来巨大的挑战,针对该挑战,我们提出了 GPU 解决方案。. 研究内容. 1 、单 GPU 关联模型的建立及测试. 2 、 GPU 集群关联模型的建立及测试. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 面向天文信号处理的 GPU 加速与实现

三峡大学三峡大学徐洋徐洋

Page 2: 面向天文信号处理的 GPU 加速与实现

报告内容

1、射电信号交叉关联 GPU加速

2、银河系整体消光——贝叶斯定理 GPU加速

Page 3: 面向天文信号处理的 GPU 加速与实现

射电信号交叉关联 GPU加速

GPU 的性价比越来越高,能耗越来越低,随着官方开发工具的逐步升级,学习及开发难度逐渐降低。

研究背景

研究内容1 、单 GPU 关联模型的建立及测试

2 、 GPU 集群关联模型的建立及测试

射电干涉仪阵列规模的不断扩大带来了海量的数据处理需求,该需求的实时处理对传统解决方案的性能和成本等带来巨大的挑战,针对该挑战,我们提出了 GPU 解决方案。

Page 4: 面向天文信号处理的 GPU 加速与实现

射电信号交叉关联 GPU加速

GPU 与 CPU 架构的区别

Page 5: 面向天文信号处理的 GPU 加速与实现

射电信号交叉关联数据处理流程

FFT :快速傅里叶变换

CMAC :复数的乘累加

射电信号交叉关联 GPU加速

Page 6: 面向天文信号处理的 GPU 加速与实现

单 GPU模型的建立

CMAC GPU 实现模型

射电信号交叉关联 GPU加速B(B+1)/2

Page 7: 面向天文信号处理的 GPU 加速与实现

射电信号交叉关联 GPU加速单 GPU模型的测试

天线个数 256个

天线极化个数 2极

单位数据的长度 8个数据点

累加次数 1024次

主机拷入数据到设备(源数据) 32MB

设备拷出数据到主机(结果) 8.03125MB

计算量 8.6GFLOP

CMAC阶段测试数据参数及规模

Page 8: 面向天文信号处理的 GPU 加速与实现

射电信号交叉关联 GPU加速单 GPU模型的测试

分块大小 128 256 512 1024

同步方式

主机到设备 (ms) 5.07 5.06 5.05 5.04

CMAC(ms) 9.05 8.09 7.66 7.76

设备到主机 (ms) 1.28 1.28 1.28 1.28

总时间 (ms) 15.4 14.43 13.99 14.08

吞吐率 (Gflops) 560 597 616 613

异步方式总时间 (ms) 11.5 10.7 11.5 14

吞吐率 (Gflops) 747 802 751 616

基于 GTX580 单 GPU 的 CMAC测试结果

“ 分块”即对累加过程分多次进行,测试结果性能最好的情况为异步方式下分块大小为 256 时的 802GFLOPS ,约为 GTX580 理论峰值的 51% ,还有一定的提升空间。

Page 9: 面向天文信号处理的 GPU 加速与实现

射电信号交叉关联 GPU加速GPU集群模型的建立

Recv1 Recv2 Recvi…

FFT1 FFT2 FFTi…

CMAC1

CMAC2

CMACi…

M 个接收节点

N 个 FFT 节点

K 个相关节点

交叉相关 GPU 集群模型

Page 10: 面向天文信号处理的 GPU 加速与实现

射电信号交叉关联 GPU加速GPU集群模型的测试

GPU 集群基本处理过程测试(串行方式)

节点类型 处理阶段 时间 (ms) 部分总时间(ms) 总时间 (ms)

FFT节点

接收数据 23 23

78

拷入显存 8.63

32

数据重组 1 0.028FFT 0.033转置 0.011

数据重组 2 0.011拷出显存 23发送数据 23 23

CMAC节点

接收数据 28 28

78数据重组 3 9.4 9.4拷入显存 16

38CMAC 1.1拷出显存 9.4

Page 11: 面向天文信号处理的 GPU 加速与实现

射电信号交叉关联 GPU加速GMRT项目需求

天线个数 32个天线极化个数 2极基线个数 528

采样频率 33MHz

采样数据点位数 4bit

采样数据类型 复数

总数据产生速率: 2.014GB/s

FFT 阶段计算量: 31.68GFLOPS

CMAC 阶段计算量: 544GFLOPS

GMRT (Giant Meter wave Radio Telescope) 现用集群共有 48 个节点,包括 16个接收节点、 16 个计算节点和 16 个存储节点。下表为望远镜基本配置参数:

即 GMRT 项目总的计算需求约为 600GFLOPS ,约占 GTX580 显卡峰值性能的 40% ,比上面单机 GPU 测试的 51% 的占用率要低,即完成整体项目的计算仅需单个计算节点(一块 GTX580 显卡)

Page 12: 面向天文信号处理的 GPU 加速与实现

射电信号交叉关联 GPU加速

Recv1 Recv2 Recvi…

FFT CMAC

16 个接收节点

1 个计算节点

GMRT 交叉相关 GPU 集群模型

GMRT项目需求

Page 13: 面向天文信号处理的 GPU 加速与实现

银河系整体消光—贝叶斯定理 GPU加速

贝叶斯公式原型

根据 94 颗 BHB 校验星,对 14265 颗 BHB 候选星进行消光处理,采用 Intel Core i7 2600k CPU 的 C 程序需要近一个月的时间,通过GPU 加速实现后,在 GTX580 显卡上仅需要 2 天。

计算密集型任务

Page 14: 面向天文信号处理的 GPU 加速与实现

总结

2 、在面向计算密集型的贝叶斯定律时,相对 CPU 程序,可以得到15 倍的加速效果。

1 、经过大量的探索测试, GPU 方案可以有效对射电信号的交叉关联过程进行加速。

3 、随着 GPU 的进一步发展,将来可以满足更多的天文数据处理需求。

Page 15: 面向天文信号处理的 GPU 加速与实现

谢谢!