您好,欢迎来到花图问答。
搜索
您的当前位置:首页基于GPU的雷达信息处理并行设计优化技术研究

基于GPU的雷达信息处理并行设计优化技术研究

来源:花图问答
电子技术

• Electronic Technology

基于GPU的雷达信息处理并行设计优化技术研究

文/韩文俊 王嘎 丁琳琳

摘 要雷达信息处理应用的运算复杂、数据量大,需要高速实时处理。本文针对雷达系统的脉压、MTI等应用,研究了GPU在雷达实时信号处理方面的并行设计优化技术,利用数据划分、线程组织、缓存优化、核函数合并等设计方法实现应用,性能和CPU集群平台相比较,提高了4-23倍左右。【关键词】雷达信息处理 GPU 异构并行

1 前言

目前,雷达系统的发展正在向数字化、软件化的方向发展,未来的趋势是智能化雷达,硬件处理器已经由单核进入多核时代,并且向着异构、众核的趋势发展,雷达的各种功能和工作流程由软件完成。目前,雷达系统采用的硬件平台有多核CPU、多核DSP、FPGA,GPU等,其中基于图形处理器(Graphic Processing Unit, GPU)的异构系统成为现阶段高性能计算体系的一种主流设计方法。GPU具备高度并行、多线程多核心等特点,最新一代的图形处理器浮点运算能力已达TFLOPS(1012FLOPS)数量级,其主要用途由图形渲染已经过渡到通用计算方面。美国Army Research Laboratory研究了基于异构系统的超宽带合成孔径雷达的信号加速处理,将不同型号的GPU作为计算设备,得了较好的加速性能。从2007年公开发布通用并行计算架构CUDA(Compute Unified Device Architecture,CUDA)以来,它已被证明在许多计算密集型的信号处理等应用上得到显著的速度提升。

对于异构众核处理器应用来说,最终要解决的问题就是软件,主要涉及算法并行化、并行编程模型和框架等方面。本文针对雷达信息处理领域涉及到的应用,研究基于雷达信息处理高性能计算的并行算法、并行设计框架、性能调优等方面的技术和方法。

图1:数据到线程的映射

2 并行优化设计技术

并行优化设计的作用是尽量发挥硬件提供的全部计算资源,以减少延迟,即更快地完成

计算任务,或提高吞吐量。针对雷达信号处理,进行并行优化设计一般包括5个步骤:

(1)分析问题,理解算法,分解问题的串行/并行的工作负载;

(2)选择硬件,确定高效的GPU型号;

图2:并行设计框架

(3)数据、任务划分,确定计算划分的粒度和硬件资源最佳匹配;

(4)选择并行编程模式,确定并行设计架构;

(5)并行计算性能优化,反复迭代至性能最优。

2.1 算法并行化设计

算法并行化设计包括:应用的并行/串行部分在GPU/CPU上的分解、数据划分、划分后的计算粒度与GPU的粒度最佳匹配。

以雷达信号处理来说,雷达信息处理算法之间的数据交互,会影响并行算法设计。在并行算法设计之前要进行数据相关性分析、指令依赖分析,进而决定划分、映射的维度。对于MTI来说,由于通道之间、距离门之间不依赖,

82 •电子技术与软件工程󰀡󰀡Electronic Technology & Software Engineering

Electronic Technology 电子技术

表1:脉压、MTI应用在K4200与Intel集群实验结果

数据量

应用功能

脉冲*通道*点数

脉压滑窗MTI

1*1*163848192*8*1

处理时间73us77.7us

通过率214 MIQ/s843.44 MIQ/s

处理时间301.078us1812us

通过率54.41 MIQ/s36.16 MIQ/s

4.123

GPU

集群

提升倍数(集群/GPU)

划分以通道或距离门划分数据;对于脉冲压缩来说,通道之间、脉冲之间不依赖,划分以总的脉冲数为划分依据。划分后的计算粒度要和GPU的线程匹配。2.2 并行编程框架

CUDA使用的是单指令多线程(SIMT)的并行模式,硬件GPU包含了大量的基础计算核心,多个核集成在一起称为多流处理器(SM)。将一个计算任务分解成多个子任务,称其为线程,多个线程被组织为线程块,线程块被分解为大小与一个SM中核数量相同的线程束(warp),每个线程束由一个特定的多流处理器执行。

对于雷达信号处理的应用,一个核函数执行在一个Grid上,一个Grid分为多个Block,而一个Block分为多个Thread,将数据映射到软件线程,然后软件线程调度到硬件线程执行。数据到线程的映射如图1所示。

核函数的执行过程中,把应用程序分解为大小合适的网格、线程块、线程,是保证CUDA内核性能的关键,比如,NVIDAI Quadro K4200型号的GPU一个线程块包含32个线程,那么在构造核函数的线程参数时,应该将Thread设置为32的倍数,利于线程调度。2.3 并行性能优化

并行计算性能优化基础是并行加速比性能定律:Amdahl定律和Gustafson定律。性能优化方法主要有:性能优化循环模式、自上而下的方法、分层性能优化方法以及性能分析工具的使用。

(1)性能优化循环模式:借助性能分析工具,不断发现、消除性能瓶颈的迭代过程。

(2)自上而下的方法:从系统配置、应用设计、底层优化,自上而下进行优化。

(3)分层性能优化方法:从硬件层、运行层、编译层、代码层多个层次进行性能优化。

(4)并行分析工具,借助CUDA Profiler、Intel Parallel Studio等分析工具可以监测到CPU使用率、缓存命中缺失率等,有助于性能优化。

并行性能优化,要选择在性能最优的算法并实现。以分析为导向,以程序热点为目标,以并行优化方法为后盾,借助于性能分析工具,一次一个目标,最终把代码性能优化到最佳。

3 并行应用实验

基于NVIDAI Quadro K4200和Intel Xeon

(R)CPU的集群平台E5-2648L V2,利用2.1、数的方法;

2.2、2.3的并行设计方法,对雷达信息处理的(5)线程组织中设置每个线程块线程的脉冲压缩、MTI进行实验。个数是32的倍数,利于线程调度;

3.1 软硬件平台

(6)核函数避免分支进行。

NVIDIAd的GPU,K4200包含7个SM4 总结

处理器,每个处理器包括:192个CUDA计本文设计了基于GPU平台的雷达信息处算单元,总线带宽是172.8GB/s,一级数据缓理的并行处理框架,利用线程组织、流处理、存是48KB。CPU集群平台是Xeon(R)E5-异步处理、共享内存、核函数合并等方法,设2648L V2,10个核心,20个线程,主频1.9GHz,计实现了典型雷达应用功能的并行算法设计,总线带宽8G/s,一级数据缓存320KB。

实现结果证明,基于GPU的雷达信息处理并GPU的软件开发环境是基于VS2013和行优化设计具有高实时、高吞吐量等优势。

CUDA Toolkit 8.0,基于LINUX操作系统的VPX集群,开发环境使用的是Eclips,包括使参考文献

用MKL函数库。[1]The OpenCL Specification[S].Khronos

3.2 并行设计框架

OpenCL Working Group.2014:23.

[2]Zhang Bo,Xue Zhenghui, Ren Wu,et al.

利用2.1、2.2的方法进行并行设计程序,Acceleration 3D FDTD Algorithm Using 如图2所示,脉压的并行设计框架如图2所示。

GPU Computing[J].Chinese Journal of (1)利用流从主存到显存异步拷贝输入Radio Science,2011,26(05):864-868.数据;

[3]Song J P,Ross J A,Shires D R.Hybrid

(2)显存的数据传输到K200的硬件线Core Acceleration of UWB SIRE 程上,通过CPU处理指令,利用NPP库、Radar Signal Processing[J].IEEE cuBLAS库实现FFT和向量乘,将补0、Trans on Parallel and Distributed FFT、点乘、逆FFT、截取合并在一个核函数System,2011,22(01):46-57.

内部,参数传递通过共享内存;

[4]NVIDIA Corporation.NVIDIA Nsight

(3)GPU核心计算结束,更新显存的处Visual Studio Edition 4.7 User 理结果;

Guide.NVIDIA Gameworks,2015.

(4)从显存copy利用流从主存到显存异[5]NVIDIA Corporation.“NVIDIA CUDA

步拷贝数据;

Runtime API,”NVIDIA Developer Zone, (5)将计算结果,利用流从显存到主存Cuda Toolkit Documentation,2015.

异步拷贝数据;[6]Ruiz A,Ujaldon M,Cooper L,et

al.Non-rigid registration for 3.3 实测性能对比

large sets of Microscopic images 经过2.3的性能优化方法,反复迭代并行on graphics processors[J]. 性能优化,经过CUDA Profiler分析过,CPU-Journal of Signal Processing GPU的传输速率达到理论值的30%,线程数Systems,2009,55(1-3):229-250.

活跃程度达到100%,实验测试的性能如表1[7]刘文志著.并行算法设计与性能优化[M].

所示。北京:机械工业出版社,2016(01).

[8]Timothy G.Mattson等.Parallel

3.4 分析

Programming Pattern.2015(02).

分析并行应用实验的实测结果,并行效率显著主要是基于以下几点:

作者简介

(1)1344个高速并行处理的核心;

韩文俊(1984-),男,内蒙古自治区乌兰察(2)流式处理,异步拷贝掩盖掉数据拷布市人。南京电子技术研究所高级工程师,主贝的时间消耗;

要研究领域是雷达通用软件处理架构,软件和(3)并行设计框架采用核函数合并的方Fpga设计技术。

法;

(4)并行设计框架采用共享内存传递参

作者单位

南京电子技术研究所 江苏省南京市 210039

Electronic Technology & Software Engineering 电子技术与软件工程• 83

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- huatuowenda.com 版权所有 湘ICP备2023022495号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务