用于空间计算并行化的自适应负载平衡方法

文档序号:6649576阅读:359来源:国知局
专利名称:用于空间计算并行化的自适应负载平衡方法
技术领域
本发明属于高性能计算技术领域,涉及一种负载平衡方法,尤其涉及一种用于空 间计算并行化的自适应负载平衡方法。
背景技术
目前,网络高性能计算的研究受到广泛重视,构建的思路和实现形式也各不相同。 按照构建形式,可以将它们分为技术相关的两大类(1)机群计算。采用高速网络连接一组工作站或微机,组成一个机群,或在通用网 上寻找一组空闲处理机形成一个动态的虚拟机群,使之在中间管理控制下提供具有很高性 价比的高性能计算服务。(2)网格计算。它的目标是通过互联网络将广域范围的计算资源、数据源和其他设 备统一组织管理,形成一个可相互利用、相互合作的高性能计算环境,用户可以像登录一台 超巨型机一样使用它。网络高性能计算被广泛的应用于科学的各个领域,如气象、物理、化学等。高性能 计算的一个重要问题就是计算任务如何分解并在计算过程中保持各处理器的负载平衡。在 现有的方法中多以固定的任务分派方式,在运算过程中缺乏对计算负载的动态调整。这些 分派和调整方法在负载分布不均或发生变化时将造成部分处理机负载过高,部分处理机闲 置的现象,一方面降低了计算速度,另一方面造成了资源的浪费。

发明内容
本发明所要解决的技术问题是提供一种用于空间计算并行化的自适应负载平衡 方法,可使负责子空间计算的多处理机之间负载快速达到平衡,同时平衡后的主机之间通 讯负载小。为解决上述技术问题,本发明采用如下技术方案一种用于空间计算并行化的自适应负载平衡方法,所述方法包括并行化空间计算;在计算过程中根据多台处理器之间的负载变化情况动态调整分割线以达到新的 平衡;通过将划分的字空间成组的压缩或拉伸来加速空间的重新划分。作为本发明的一种优选方案,并行化空间计算中,每台处理机负责计算一块划分 出来的子空间,计算量来自于空间内计算对象的数目和复杂度;将每个计算对象的计算复杂度设为相同,那么计算量的大小用对象的数目来表 示;在计算过程中,当计算对象在空间内移动时,就认为从一台处理机负责的空间迁 移到另一台捶击负责的空间,这就造成了计算负载的变动。作为本发明的一种优选方案,所述方法包括初始任务空间划分步骤将二叉树的非叶子节点看成空间中的分割线,叶子节点看成最终的子空间,仿真空间根据二叉树的结构逐层的划分成2N个子空间,相邻两层的分割线的方向不同;
在这种分割条件下,任何一条竖向分割线的左面区域编号小于右面区域,任何-条横向分割线上面的区域标号小于下面的区域;
示成a1
对于由2N个子区域构成大小为X*Y的仿真空间,设每一个区域的编号由二进制表
a2,…、%,则其初始位置,即每个区域的左上角表示如下
权利要求
1.一种用于空间计算并行化的自适应负载平衡方法,其特征在于,所述方法包括 并行化空间计算;在计算过程中根据多台处理器之间的负载变化情况动态调整分割线以达到新的平衡; 通过将划分的字空间成组的压缩或拉伸来加速空间的重新划分。
2.根据权利要求1所述的用于空间计算并行化的自适应负载平衡方法,其特征在于 并行化空间计算中,每台处理机负责计算一块划分出来的子空间,计算量来自于空间内计算对象的数目和复杂度;将每个计算对象的计算复杂度设为相同,那么计算量的大小用对象的数目来表示; 在计算过程中,当计算对象在空间内移动时,就认为从一台处理机负责的空间迁移到 另一台捶击负责的空间,这就造成了计算负载的变动。
3.根据权利要求2所述的用于空间计算并行化的自适应负载平衡方法,其特征在于 所述方法包括初始任务空间划分步骤将二叉树的非叶子节点看成空间中的分割线,叶子节点看成最终的子空间,仿真空间根据二叉树的结构逐层的划分成2N个子空间,相邻两层的分割线的方向不同;在这种分割条件下,任何一条竖向分割线的左面区域编号小于右面区域,任何一条横向分割线上面的区域标号小于下面的区域;对于由2N个子区域构成大小为X*Y的仿真空间,设每一个区域的编号由二进制表示成B1`a2,…、%,则其初始位置,即每个区域的左上角表示如下
4.根据权利要求3所述的用于空间计算并行化的自适应负载平衡方法,其特征在于 所述方法进一步包括负载平衡步骤521、计算整体不平衡度;522、判断整体不平衡度是否达到设定要求;若是结束此过程,否则转向步骤S23;523、判断是否是最底层定义域DOMAIN;若是转至步骤S21,否则转向步骤S24 ;524、调整分割线一侧的第一部分,而后调整分割线另一侧的第二部分。
5.根据权利要求4所述的用于空间计算并行化的自适应负载平衡方法,其特征在于 所述负载平衡步骤具体为设所有最小的子区域,即所有叶子节点的数目为D0MAIN_NUM,D0MAIN_NUM = 2n,N正整数;对于编码范围为StartDomain到EndDomain的子区域范围,将分成(StartDomain (EndDomain+StartDomain)/2),禾口 ((EndDomain+StartDomain)/2+1 ~ EndDomain)胃; 其中,EndDomain-MartDomain+1 == 2N, N 为正整数;如果Log(DOMAIN_NUM/(EndDomain-StartDomainl+)) % 2 = 1 ;则代表两部分将在水 平方向上进行调整,否则将在竖直方向上进行调整。
6.根据权利要求5所述的用于空间计算并行化的自适应负载平衡方法,其特征在于 对两部分的负载差异度定义如下
全文摘要
本发明揭示了一种用于空间计算并行化的自适应负载平衡方法,包括并行化空间计算;在计算过程中根据多台处理器之间的负载变化情况动态调整分割线以达到新的平衡;通过将划分的字空间成组的压缩或拉伸来加速空间的重新划分。并行化空间计算中,每台处理机负责计算一块划分出来的子空间,计算量来自于空间内计算对象的数目和复杂度;将每个计算对象的计算复杂度设为相同,那么计算量的大小用对象的数目来表示;在计算过程中,当计算对象在空间内移动时,就认为从一台处理机负责的空间迁移到另一台捶击负责的空间,这就造成了计算负载的变动。本发明可使负责子空间计算的多处理机之间负载快速达到平衡,同时平衡后的主机之间通讯负载小。
文档编号G06F9/46GK102063331SQ201110002618
公开日2011年5月18日 申请日期2011年1月7日 优先权日2011年1月7日
发明者丁志军, 张亚英, 张栋良, 蒋昌俊, 闫春钢, 陈闳中 申请人:同济大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1