龙源期刊网并行处理技术在雷达数据处理中的应用研究作者:朱海涛倪世道来源:《计算技术与自动化》2013年第02期摘要:为了解决雷达数据处理系统数据量日益增大,计算能力逐渐不足的问题,提出两种并行处理方法。第一种方法是对数据处理各步骤中的循环采用多个线程并行处理,属于细粒度并行;第二种方法是根据雷达数据的局部性特征,把雷达探测空域按照径向距离划分成多个部分,由多个子任务并行处理,属于粗粒度并行。实验结果显示,4线程细粒度并行雷达数据处理架构性能是原来的3倍,4任务粗粒度并行架构性能是原来的5倍,证明并行处理技术在雷达数据处理中的有效性,并且任务级的粗粒度并行架构更适合雷达数据处理。关键词:雷达数据处理;线程级并行;任务级并行;数据局部性中图分类号:TP301.6文献标识码:A1引言未来战争中的电磁环境将异常复杂,雷达会受到各种形式的欺骗和干扰,产生大量的杂波,并且需要检测的目标日益增多,目标的运动速度越来越快,目标的机动性也越来越灵活[1-2]。上述情况的出现将会大大增加雷达数据处理的运算量,而雷达数据处理系统作为一个实时系统,必须在规定的时间内计算出结果,这对数据处理的计算能力提出了很高的要求。并行处理技术是提高计算速度最有效的技术之一,通过把求解问题分解为多个可以并行运算的子问题,在多个处理器上同时求解,从而降低解决时间。目前,并行处理已广泛的应用于石油勘探、气象预报、核武器模拟等对计算能力有迫切需求的领域[3],并且在雷达仿真系统、雷达信号处理、多传感器数据融合等方向也有应用[4-6]。本文将对并行处理技术在雷达数据处理中的应用进行研究,探索并行雷达数据处理设计方法,解决雷达系统中面临的计算能力不足问题。2并行处理相关工作2.1并行计算机系统对称多处理器(symmetricmultiprocessor,SMP)并行计算机均采用均匀存储访问结构,如图1(a)所示。共享存储结构提供了一个对用户友好的编程视角,处理器间的通信通过共享存储的方式实现,速度快,其缺点是需要用户保证存储一致性,扩展性较差。龙源期刊网分布式存储结构中每个处理器都有自己独立的内存,本地内存的改变将不会影响到其他的处理器,处理器间通过互联网络进行通信,如图1(b)所示。分布式存储的优点是扩展性好,不需要维护存储一致性,缺点是需要用户显式地进行处理器间通信。2.3并行计算机编程模型并行计算机编程模型主要包括共享存储和消息传递两种编程模型[8-9]。共享存储并行编程模型基于线程级的细粒度并行,主要应用于SMP等共享存储结构的并行计算机。在多个处理器访问共享内存时,需要采用同步机制以保证共享数据的一致性,常用的同步机制有互斥量和信号量。OpenMP是目前比较流行的面向共享存储的并行编程技术。进行循环级并行的应用程序适合采用共享存储编程模型。3雷达数据处理分析雷达数据处理系统接收到信号处理送来的点迹,一般按照图2所示流程进行处理[10]。点迹预处理:把每一个新点迹从目标量测坐标系转换到数据处理所在坐标系。数据互联:建立当前时刻新点迹与历史数据之间的关系,以确定这些点迹是否来自同一个目标,分为新点迹与旧点迹的互联、新点迹与航迹的互联。典型的数据互联算法有最近邻域法(NNF)和概率数据互联法(PDAF)。最近邻域算法根据对目标状态的预测设置跟踪门(相关波门),判断新点迹是否落入某个跟踪门内,设置相关度,最后选择相关度最高的点航配对。点迹与点迹的互联方法同点航互联。航迹起始:航迹起始是目标跟踪的第一步,主要包括暂时航迹形成和轨迹确定。跟踪:对来自目标的新点迹量测值进行处理,以便保持对目标现时状态的估计。目前,经常采用的目标跟踪方法有交互式多模型算法、Jerk模型算法等,滤波算法多使用卡尔曼滤波[10]。交互多模型算法通过多个目标模型的有效组合来实现对目标机动状态的自适应估计[11-12]。点迹与航迹维护:对每个点迹和航迹进行维护,删除满足条件的点迹和航迹。4实验结果分析根据第3节的分析,分别搭建了共享存储并行计算机系统和分布式存储并行计算机系统。共享存储计算机系统配置为:IntelXeonW3565四核处理器,Linux2.6.32操作系统,6GB内存,四个处理器核通过处理器内部的互连总线共享内存。分布式存储计算机系统由四个龙源期刊网节点组成,每个节点配置为IntelXeonW3565处理器,Linux2.6.32操作系统,6GB内存,千兆以太网卡,节点之间通过千兆以太网交换机进行通信。在实验中,仿真1500帧数据,模拟2000批目标,每帧数据随机产生20000个杂波点,雷达的探测距离为1000km,目标和杂波点迹在探测空域均匀分布。采用任务级并行处理方法时,相邻区域的重叠范围20km,按照表1中的配置对任务进行分解。在点迹预处理、航迹起始和跟踪等步骤中,随着任务的分解,运算量线性降低。线程级并行和任务级并行均具有这种特点,因此两种并行方法的执行时间变化情况基本一致。根据第3节的分析可知,按照探测距离分解任务时,数据互联计算量的降低与任务个数增加成平方关系,而线程级并行方法中数据互联计算量与任务分解个数成线性关系。因此,在数据互联步骤,线程级并行执行时间成线程降低,任务级并行执行时间成平方关系降低,与图7中的统计结果基本一致。点迹与航迹维护主要是对保存点迹、航迹、点航配对的链表等共享数据进行查找、删除等操作。线程级并行方法中访问共享数据需要采用同步机制,频繁的访问共享数据会导致线程的阻塞。另外,多个线程同时访问内存,竞争激烈,每个线程的访存带宽下降明显,因此线程级并行处理中点迹与航迹维护并行处理的效果不好。在任务级并行时,每个子任务有独立的内存,不存在访存竞争问题和同步。每个子任务负责部分区域的处理,点迹和航迹链表长度与任务个数成线性关系降低,点航配对链表长度与任务个数呈平方关系下降,因此任务级并行处理中点迹与航迹维护时间降低非常明显。图7中的统计结果与上述分析基本一致。在任务级并行中增加了综合步骤,当只有一个任务时,不需要综合步骤,多个任务执行时,综合步骤的时间开销占总时间的比例在5%以内,对系统执行时间影响很小。通过以上为分析可知,按照探测区域进行任务级粗粒度并行处理比线程级的细粒度并行处理效果更好。5结论本文通过对雷达数据处理进行分析,提出了两种并行处理方法。第一种方法是对数据处理各步骤中的循环采用多个线程并行处理,属于细粒度并行;第二种方法是根据雷达数据的局部性特征,把雷达探测空域按照径向距离划分成多个部分,由多个子任务并行处理,属于粗粒度并行。实验结果显示,4线程细粒度并行雷达数据处理架构性能接近原来的3倍,4任务粗粒度并行架构性能接近原来的5倍,证明了并行处理技术在雷达数据处理中的有效性。龙源期刊网在线程级并行处理方法中,线程之间同步频繁,访存竞争激烈等原因导致性能有所损失。任务级并行处理方法中同步次数较少,不存在访存竞争问题,并且按照区域分解任务减少了总任务的计算量,性能提高更明显。因此,任务级的粗粒度并行更适合雷达数据处理。参考文献[1]康耀红.数据融合与应用[M].西安:西安电子科技大学出版社,1997.[2]俞志富,吕久明.基于航迹跟踪的EKF应用研究[J].现代防御技术,2007,35(2):113-117.[3]王志斌,陈波,万玉发,等.天气雷达资料实时并行处理方法[J].计算机工程,2009,35(23):255-257.[4]徐雷,吴嗣亮,李海.相控阵雷达仿真系统并行计算研究[J].北京理工大学学报,2008,28(6):517-520.[5]何勇,张必银.多传感器数据融合并行处理方法研究[J].舰船电子工程,2011,31(8):56-59.[6]黄鸿,王秀春.并行计算机在现代雷达信号处理中的应用[J].现代雷达,2004,26(3):25-28.[7]多核系列教材编写组.多核程序设计[M].北京:清华大学出版社,2007.[8]陈国良.并行计算:结构算法编程[M].第3版.北京:高等教育出版社,2011.[9]RABENSEIFNER,R.Hybrid.MPI/OpenMPParallelProgrammingonClustersofMultiCoreSMPNodes[J].17thEuromicroInternationalConferenceonParallel,DistributedandNetworkbasedProcessing,2009:427-436.[10]何友,修建娟,张晶炜,等.雷达数据处理及应用[M].第二版.北京:电子工业出版社,2009.[11]AVERBUCHA,BARSHALOMY,DAYANJ.Interactingmultiplemodelmethodsintargettracking:asurvey[J].IEEETransactionsonAerospaceandElectronicSystems,1998,34(1):103-123.[12]X.RONGLI,VESSELINP.JILKOV.Surveyofmaneuveringtargettracking.PartV:Multiplemodelmethods[J].IEEETransactionsonAerospaceandElectronicSystems,2005,41(4):1255-1231.龙源期刊网