一种基于动态负载均衡技术的并行弹跳射线方法技术

技术编号:14555828 阅读:89 留言:0更新日期:2017-02-05 09:51
一种基于动态负载均衡技术的并行弹跳射线方法,采用递归方法将整个初始孔径面平均分割为包含相同射线管数量的面积相同的子孔径面,每一个子孔径面分配一个处理器来计算角度,所有划分节点形成一个二叉树结构,根据前一角度计算时间,从根节点下的两个子节点开始递归地动态调整当前角度负载分配,直到叶节点不再需要分割为止,如果待调整节点的两个子节点的实际计算时间的比值与该两个子节点的理想计算时间的比值的差异大于设定阈值,则计算需要调整的负载量,并根据需要调整的负载量来调整当前角度的分割位置。本发明专利技术达到处理器间的良好负载均衡,从而能够实现对复杂电大尺寸目标的电磁散射的高效并行计算,提升了弹跳射线法的并行效率。

Parallel bouncing ray method based on dynamic load balancing technology

A parallel bouncing ray method of dynamic load balancing based on technology, using recursive method the initial aperture average segmentation sub aperture surface contains the same number of ray tubes of the same area, each sub aperture is assigned a processor to calculate the angle of all partition nodes form a two tree structure, according to the calculation of time the former point of view, start recursively dynamically adjust the angle of load current distribution from the two child of the root node of the leaf node, until no longer needs resegmented. If the difference ratio calculated by two nodes to be adjusted when the node and the two node sub ideal computing time is greater than the threshold, the calculation need to load adjustment, and adjust the angle according to the load need to adjust the split position. The invention achieves good load balance among processors, and can realize the efficient parallel calculation of the electromagnetic scattering of complex electrically large targets, and improve the parallel efficiency of the bouncing ray method.

【技术实现步骤摘要】

本专利技术涉及雷达目标电磁仿真
,尤其涉及一种基于动态负载均衡技术的并行弹跳射线方法
技术介绍
弹跳射线法(SBR)混合使用几何光学与物理光学两种方法,能够准确计算高频散射机理中最重要的多次反射。因此,弹跳射线法是高频方法中最成功也是应用最为广泛的一种方法,它常常被用来解决目标雷达散射截面(RCS)估算、一维距离像、二维逆合成孔径雷达(ISAR)成像等问题。在弹跳射线法SBR中,首先定义垂直于入射波方向的矩形孔径面,该孔径面要能够覆盖目标在该平面上的投影区域,再将孔径面以十分之一波长划分成许多很小的正方形射线管。射线管作为SBR的基本计算单元,彼此之间相互独立,十分适合并行计算。基于图形处理器(GPU)的弹跳射线法,采用适合GPU特点的无堆栈kd树(k-dimensionaltree)或NVIDIAOptiX射线追踪引擎加速射线追踪,并将电磁计算部分也全部转移至GPU端,实现了电大目标RCS的快速预估,但是上述方法只利用了单个GPU的并行资源,许多实际的工程应用都需要求解超电大尺寸复杂目标的电磁散射问题,单个处理器的计算资源已经无法满足如此巨大的计算需求。基于共享存储(OpenMP)模型的SBR方法,利用多个中央处理器(CPU)实现并行计算,该方法将计算任务划分为若干子任务,根据子任务耗时将其进行组合,分别分配给不同CPU,但该调度算法存在子任务划分方法不明确以及并行效率不高的问题。>
技术实现思路
本专利技术提供一种基于动态负载均衡技术的并行弹跳射线方法,达到处理器间的良好负载均衡,从而能够实现对复杂电大尺寸目标的电磁散射的高效并行计算,提升了弹跳射线法的并行效率。为了达到上述目的,本专利技术提供一种基于动态负载均衡技术的并行弹跳射线方法,包含以下步骤:步骤S1、在第一个角度,均匀分割初始孔径面,构建二叉树结构;在第一个入射角,采用递归方法将整个初始孔径面平均分割为包含相同射线管数量的面积相同的子孔径面,每一个子孔径面分配一个处理器来计算角度,初始孔径面作为根节点,每次划分获得的两个子孔径面作为子节点,最终获得的不可再划分的每一个子孔径面作为叶节点,所有节点形成一个二叉树结构;步骤S2、各个处理器计算当前角度并记录当前角度计算时间;步骤S3、统计前一角度孔径面划分对应的二叉树各节点的计算时间,并计算二叉树中除根节点外的每个节点的每一行或每一列射线管的平均计算时间;步骤S4、根据前一角度计算时间,从根节点下的两个子节点开始递归地动态调整当前角度负载分配,直到叶节点不再需要分割为止;如果待调整节点的两个子节点的实际计算时间的比值与该两个子节点的理想计算时间的比值的差异大于设定阈值,则计算需要调整的负载量,并根据需要调整的负载量来调整当前角度的分割位置。所述的步骤S1具体包含以下步骤:步骤S1.1、找到孔径面较长的边,使用垂直于该边的分割线,将孔径面划分为两个子孔径面,一个子孔径面分配一半数量的处理器计算,另一个子孔径面分配一半数量的处理器计算,每一个子孔径面作为二叉树的子节点;步骤S1.2、步骤S1.1中获得的两个子孔径面将会被以同样的划分方法继续递归划分,并在划分过程中不断更新待划分孔径面和参与其计算的处理器数量,直到分配给子孔径面的处理器数量等于1时,该子孔径面的分割终止,最终生成的每个子孔径面作为二叉树的叶节点。将孔径面划分为两个子孔径面的划分方法包含:假设每个射线管的计算量相同,则分割位置应为:其中,表示向下取整,N是参与计算当前待划分孔径面的处理器的数量,L是当前被分割的边的边长;一个子孔径面将使用个处理器计算,另一个子孔径面将会被分配个处理器,表示向上取整。所述的步骤S3具体包含以下步骤:步骤S3.1、获得前一角度孔径面划分对应的二叉树的叶节点的计算时间;前一角度孔径面划分对应的二叉树的叶节点的计算时间是步骤S2中各处理器记录并广播的计算时间;步骤S3.2、通过从叶节点到根节点向上遍历的方式来计算该二叉树内部节点的计算时间,每个节点的时间都是其左右子节点计算时间之和;步骤S3.3、计算二叉树内除根节点外的每个节点的每一行或每一列射线管的平均计算时间;所述的步骤S3.3中,如果父节点的分割轴是横向,就计算节点的每一行的射线管的平均计算时间,如果父节点的分割轴是竖向,就计算节点的每一列的射线管的平均计算时间。所述的步骤S4中,判断待调整节点的两个子节点的实际计算时间的比值tl/tr与该两个子节点的理想计算时间的比值nl/nr的差异是否大于设定阈值ε的方法包含:判断公式(2)是否成立:|tltr-nlnr|>ϵ---(2);]]>其中,tl和tr分别为待调整节点的左、右子节点的计算时间,nl和nr为待调整节点的左、右子节点分配的处理器数目,ε为用户设定阈值。所述的需要调整的负载量n的计算方法包含:tl+tl‾·ntr-tr‾·n=nlnr---(3)]]>n=tr·nl-tl·nrtl‾·nr+tr‾·nl---(4)]]>其中,和分别为待调整节点的左、右子节点一行或一列射线管的平均计算时间;由公式(4)计算得到的需要调整的负载量n,要乘以一个取值范围为[0,1]的系数α:n′=α·n计算需要调整的当前角度的分割位置包含:sc=sp+n′(5)其中,sc为当前入射角度的分割位置,sp为前一入射角度的分割位置。本专利技术具有以下优点:实现了处理器间良好的负载均衡,提升了弹跳射线法的并行效率,基于前一角度的计算时间来动态调整负载,具有良好的可扩展性,不仅适用于由同类多CPU或多GPU组成的并行计算机系统,也适用于配备不同处理器的异构并行系统。附图说明图1为本专利技术一种基于动态负载均衡技术的并行弹跳射线法的流程图。图2为本专利技术实施例中孔径面的划分过程及构建的二叉树示意图。图3为本专利技术实施例中统计孔径面划分对应的二叉树各节点计算时间的示意图。图4为本专利技术实施例中动态调整前孔径面划分位置的示意图。图5为本专利技术实施例中动态调整后孔径面划分位置的示意图。图6为本专利技术实施例中的舰船几何模型示意图。具体实施方式以下根据图1~图6,具体说明本专利技术的较佳实本文档来自技高网...

【技术保护点】
一种基于动态负载均衡技术的并行弹跳射线方法,其特征在于,包含以下步骤:步骤S1、在第一个角度,均匀分割初始孔径面,构建二叉树结构;在第一个入射角,采用递归方法将整个初始孔径面平均分割为包含相同射线管数量的面积相同的子孔径面,每一个子孔径面分配一个处理器来计算角度,初始孔径面作为根节点,每次划分获得的两个子孔径面作为子节点,最终获得的不可再划分的每一个子孔径面作为叶节点,所有节点形成一个二叉树结构;步骤S2、各个处理器计算当前角度并记录当前角度计算时间;步骤S3、统计前一角度孔径面划分对应的二叉树各节点的计算时间,并计算二叉树中除根节点外的每个节点的每一行或每一列射线管的平均计算时间;步骤S4、根据前一角度计算时间,从根节点下的两个子节点开始递归地动态调整当前角度负载分配,直到叶节点不再需要分割为止;如果待调整节点的两个子节点的实际计算时间的比值与该两个子节点的理想计算时间的比值的差异大于设定阈值,则计算需要调整的负载量,并根据需要调整的负载量来调整当前角度的分割位置。

【技术特征摘要】
1.一种基于动态负载均衡技术的并行弹跳射线方法,其特征在于,包含以下步骤:
步骤S1、在第一个角度,均匀分割初始孔径面,构建二叉树结构;
在第一个入射角,采用递归方法将整个初始孔径面平均分割为包含相同射线管数量的面积相同的子孔径面,每一个子孔径面分配一个处理器来计算角度,初始孔径面作为根节点,每次划分获得的两个子孔径面作为子节点,最终获得的不可再划分的每一个子孔径面作为叶节点,所有节点形成一个二叉树结构;
步骤S2、各个处理器计算当前角度并记录当前角度计算时间;
步骤S3、统计前一角度孔径面划分对应的二叉树各节点的计算时间,并计算二叉树中除根节点外的每个节点的每一行或每一列射线管的平均计算时间;
步骤S4、根据前一角度计算时间,从根节点下的两个子节点开始递归地动态调整当前角度负载分配,直到叶节点不再需要分割为止;如果待调整节点的两个子节点的实际计算时间的比值与该两个子节点的理想计算时间的比值的差异大于设定阈值,则计算需要调整的负载量,并根据需要调整的负载量来调整当前角度的分割位置。
2.如权利要求1所述的基于动态负载均衡技术的并行弹跳射线方法,其特征在于,所述的步骤S1具体包含以下步骤:
步骤S1.1、找到孔径面较长的边,使用垂直于该边的分割线,将孔径面划分为两个子孔径面,一个子孔径面分配一半数量的处理器计算,另一个子孔径面分配一半数量的处理器计算,每一个子孔径面作为二叉树的子节点;
步骤S1.2、步骤S1.1中获得的两个子孔径面将会被以同样的划分方法继续递归划分,并在划分过程中不断更新待划分孔径面和参与其计算的处理器数量,直到分配给子孔径面的处理器数量等于1时,该子孔径面的分割终止,最终生成的每个子孔径面作为二叉树的叶节点。
3.如权利要求2所述的基于动态负载均衡技术的并行弹跳射线方法,其特征在于,将孔径面划分为两个子孔径面的划分方法包含:
假设每个射线管的计算量相同,则分割位置应为:
其中,表示向下取整,N是参与计算当前待划分孔径面的处理器的数量,L是当前被分割的边的边长;
一个...

【专利技术属性】
技术研发人员:高鹏程郭良帅林云梁子长
申请(专利权)人:上海无线电设备研究所
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1