多GPU并行技术在雷达信号处理中的应用

2018-03-22 01:31栾厚斌
电子技术与软件工程 2018年1期
关键词:并行计算

为了缩短雷达信号处理时间,开展了多GPU并行技术在雷达信号处理中的实验验证,结果表明,基于多GPU并行处理技术的雷达信号处理时间远小于基于CPU的处理时间,也明显小于单GPU的雷达信号处理方案。

【关键词】多GPU 雷达信号 并行计算

随着信号处理技术和计算机硬件技术的飞速发展,软件雷达逐渐成为雷达研究发展的重要方向。软件雷达在信号处理上的实时性一直使其性能的重要指标,也是雷达信号处理的难点之一。将雷达信号划分为多个信号进行并行处理,再将处理过的信号进行整合,是解决这一问题的有效途径之一。因此,并行计算技术的发展为雷达信号并行处理提供了条件。本文对多GPU并行计算技术在雷达信号处理中的应用进行了研究分析。

1 雷达信号并行处理架构

雷达信号的并行处理系统由模/数采样器、中央处理器CPU、多个图形处理器GPU和显控终端等组成。模/数采样器将雷达天线采集的模拟信号转换成数字信号,中央处理器CPU则负责整个雷达信号并行处理的任务调度、流程控制和数据集成整合,RAM负责对模/数转化后的未处理数据和经GPU处理后的数据进行缓存,图形处理器GPU则对划分的雷达信号原始数据进行处理,I/O总线用户在RAM和各GPU之间传递信息,显控终端则将处理整合后的信号展示在显示屏上供用户使用。

访存速度是抑制整个并行计算系统的瓶颈,而一般的数据处理系统很难充分发挥存储器的性能。为了提高系统运行效率,充分利用存储器效能,本文采用三种措施来提高存储器的访问效率:

a)通过GPU的零复制功能将主机端的数据指针直接映射到RAM的地址空间;

b)采用纹理存储器的只读方式来读取数据,通过缓存优化访问优化存储器的访问行为。

2 雷达信号并行计算模型

雷达信号的并行计算能够提高信号处理的速度,也是实现雷达信号实时处理和识别的前提和核心。本文设计了雷达信号并行计算简单模型。在该模型中,信号的处理可划分为任务级并行、数据级并行和线程级并行。通过三种并行计算模式,可将RAM传来的雷达信号进行快速并行处理和计算,为雷达信号的识别和利用提供宝贵的时间保证。

2.1 任务级并行

主机端CPU首先根据接收到的任务,对任务数据进行分类划分,并根据计算需求和实时性要求为每个任务分配相应的存储空间和并行计算GPU数量,从而实现任务级的内部存储器和GPU调度。在调度过程中,采用轮转的方式为处于空闲状态的图形处理器GPU分配任务,当有任务来临时,CPU轮询GPU,如果轮询到的GPU处于空闲状态,则将该任务根据划分的数据流按照顺序分配给该图形处理器。每个任务根据数据计算量的大小和实时性要求,可能分配一个GPU,也可能分配给多个GPU。当轮询完一遍之后,CPU根据任务需求再从头开始轮询,这种方式基本上能保证GPU之间任务分配的均衡性。但是这种分配方式可能导致一个任务多个数据流处理的异步性,因此对内部存储器的存储空间和中央控制器异步处理提出更高的要求。

2.2 数据级并行

数据级并行计算就是将每个任务的数据划分为一个或多个数据流,每个数据流分配给一个图像处理器进行处理。在雷达信号进行正交相位检波和脉冲压缩计算时,为了提高计算效率,将整个脉冲压缩后的二维数据组划分为M个小的二维数据组,每个GPU处理一个二维数据组,并进行同一距离单位相邻周期采样点的迭代计算。

2.3 线程级并行

线程级并行计算是根据数字信号处理模型和算法,以及GPU的硬件特性,准确的说就是GPU的线程数来对每一个数据流的数据进行映射,使其映射成为更加细粒度的数据流,并对其进行多线程并发计算和处理的过程。线程級并行计算和处理按照“线程网格-线程块-线程”的三级并行结构来进行,通过数据和线程块、线程索引地址的对应和映射关系分配相应的数据流,然后进行并行计算和处理。

3 实验验证

硬件环境:

多GPU并行雷达信号处理的实验验证环境:中央处理器(CPU)采用2×Intel(R)Xeon(R) CPU E5-2620 (6核,2.1GHz),内部存储器(RAM)采用8×DIMM DDR3L 1600MHz 4GB,硬盘(SSD)采用Intel SSD SATA 6Gb/s, 2.5寸 240GB,图形处理器(GPU)采用6×Nvidia Tesla K40 (12GB VRAM),操作系统(OS)为CentOS 6.5 64-bit。

本文对多GPU雷达信号并行处理的性能进行了比较测试,相对于工业领域所采用的多核CPU方案,我们的处理时间更低。经测试,不同方案GASP(s)、Single-GPU(s)、Multi-GPU(s)下雷达信号原始信号分解时间分别为4.5s、4.33s、1.1s,信号处理及集成时间分别为28.38s、6.78s、1.57s。

从对比结果看出,各方案雷达信号处理中,多核CPU方案的处理时间最长,而采用专业图形处理器CPU的Single-GPU方案时间居中,采用多GPU并行处理的Multi-GPU方案处理时间最短,特别是在信号的处理与集成时间上,比GASP方案提高了将近20倍,比Single-GPU方案提高了4倍多。因此,多GPU并行处理技术能大幅提升雷达信号的处理性能,缩短处理时间。

4 结束语

几年来,并行计算和信号处理技术发展越来越快,并行计算和处理技术的应用也越来越广泛,已逐步渗透到我们生产生活的方方面面。论文提出了多GPU雷达信号并行处理架构,建立了三级并行处理模型,并对多GPU技术在雷达信号处理中的应用效果进行了实验验证,实验结果表明多GPU并行处理技术能更快的对雷达信号进行处理,大大提高了雷达信号处理的实时性。

参考文献

[1]苗玉杰.软件雷达信号处理的多GPU并行技术分析[J].中国科技投资,2013(20).

[2]秦华,周沫,察豪,左炜.软件雷达信号处理的多GPU并行技术[J].西安电子科技大学学报,2013(03).

作者简介

栾厚斌(1978-),男,黑龙江省延寿县人。硕士学位。工程师。主要研究方向为舰船通信系统。

作者单位

1.海军驻大连四二六厂军事代表室 辽宁省大连市 116005

2.中国船舶重工集团公司第七〇一研究所 湖北省武汉市 430000

猜你喜欢
并行计算
基于自适应线程束的GPU并行粒子群优化算法
云计算中MapReduce分布式并行处理框架的研究与搭建
并行硬件简介
不可压NS方程的高效并行直接求解
最大匹配问题Tile自组装模型