[发明专利]匹配于高性能计算机结构的多层嵌套负载平衡方法有效
| 申请号: | 201410676230.X | 申请日: | 2014-11-21 |
| 公开(公告)号: | CN104331336A | 公开(公告)日: | 2015-02-04 |
| 发明(设计)人: | 刘旭;曹小林;莫则尧 | 申请(专利权)人: | 北京应用物理与计算数学研究所 |
| 主分类号: | G06F9/50 | 分类号: | G06F9/50 |
| 代理公司: | 北京三友知识产权代理有限公司 11127 | 代理人: | 王天尧 |
| 地址: | 100088*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 匹配 性能 计算机 结构 多层 嵌套 负载 平衡 方法 | ||
技术领域
本发明涉及计算机技术领域,特别涉及一种匹配于高性能计算机结构的多层嵌套负载平衡方法。
背景技术
当前,高性能计算机系统结构呈现多级结构特点,主要包括:CPU内多核、计算结点内多CPU和计算结点三个层次,具体的:
CPU核层,位于CPU内,每个核一般具有单独的L1级Cache(缓存),所有核共享Last Level Cache(最底层缓存),在这两级缓存之间,可能还有其它的Cache,为部分核所共享,每个CPU可能都拥有一个内存控制器,控制自己所属的内存模块。
CPU层,CPU之间通过QPI、高速总线、交叉开关或其它方式连接,CPU访问远程内存的平均带宽小于访问本地内存的平均带宽,平均延迟大于访问本地内存的平均延迟,因此CPU访问远程内存的速度明显慢于访问本地内存的速度。
计算结点层,计算结点间通过网络互联,现代高性能计算机普遍采用torus结构或者树结构的互联网络,计算结点间CPU网络通信的平均带宽小于访问内存的平均带宽,平均延迟大于访问内存的平均延迟,因此CPU网络通信的速度明显慢于访问内存的速度。
这种体系结构导致数据访问的速度在CPU内与CPU间不同,在计算结点内与计算结点间不同,因此,对于并行程序需要合理分配子任务、仔细设计通信方法,以有效利用这种多级的系统结构特点,取得较好的并行性能。
负载平衡技术直接影响并行应用程序的空闲等待时间和数据移动开销,因此是影响数值模拟并行性能的关键因素之一。而且,随着模拟规模的扩大,负载不平衡对于并行应用程序的性能影响越来越大。具体的,在基于离散网格的数值模拟中,负载平衡技术需要完成如下任务:将计算区域的网格单元均匀地分配到计算资源(例如:CPU核)上。经过几十年的发展,已有一些负载平衡技术被用于基于离散网格的数值模拟中,这些技术在均衡分配网格单元的同时,极小化计算资源间的数据移动量。然而,由于数据访问的速度不同,因此,数据移动的开销不仅与数据移动量相关,也与数据移动的距离相关。
目前的匹配于高性能计算机体系结构的负载平衡技术主要有两类:
第一类:首先测量高性能计算机任意两个CPU之间的数据访问速度,然后根据测量得到的数据访问速度定义某种开销,最后遍历计算任务和处理器,将计算任务分配到开销最低的处理器上。
第二类:首先根据高性能计算机CPU之间的互连结构,将全部CPU映射到一个特定结构(例如,一维序列或树)。然后,根据计算任务之间的通信关系,将全部计算任务映射到相同的特定结构。最后,将两者进行匹配。这样就完成了计算任务的分配分配。
然而上述两类匹配于高性能计算机体系结构的负载平衡技术全部是串行算法,且平衡技术仅考虑在CPU之间的平衡,因此存在开销大、计算速度慢且平衡效果不好的技术问题。
针对上述问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种匹配于高性能计算机结构的多层嵌套负载平衡方法,以解决现有技术中仅考虑在CPU之间实现平衡而导致的系统开销大,计算速度慢,均衡效果不好的技术问题,该方法包括:
在计算机中,将计算区域划分为N个二级计算子区域,并将所述N个二级计算子区域一一对应地映射到计算机内部的N个计算节点上,其中,N为正整数;
在每个计算节点中,将与该计算节点对应的二级计算子区域划分为M个三级计算子区域,并将所述M个三级计算子区域一一对应地映射到该计算节点的M个CPU上,其中,M为正整数。
在一个实施例中,在将所述M个三级计算子区域一一对应地映射到该计算节点的M个CPU上之后,所述方法还包括:
在每个CPU中,将与该CPU对应的三级计算子区域划分为Q个四级计算子区域,并将所述Q个四级计算子区域一一对应地映射到该CPU的Q个CPU内核上,其中,Q为正整数。
在一个实施例中,所述N个计算节点,并行地将二级计算子区域划分为多个三级计算子区域,并行地将三级计算子区域一一对应地映射到CPU上;
和/或,M*N个CPU,并行地将三级计算子区域划分为多个四级计算子区域,并行地将四级计算子区域一一对应地映射到CPU内核上。
在一个实施例中,在计算机中,将计算区域划分为N个二级计算子区域,包括:
在计算机中,按照先保证减少数据移动,然后保证负载平衡的原则,将计算区域划分为N个二级计算子区域。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京应用物理与计算数学研究所,未经北京应用物理与计算数学研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410676230.X/2.html,转载请声明来源钻瓜专利网。
- 上一篇:采集系统专用工具箱
- 下一篇:一种车床卡盘装卸装置





