[发明专利]一种大规模行为模拟应用中的负载均衡方法有效
申请号: | 201310398936.X | 申请日: | 2013-09-04 |
公开(公告)号: | CN103491018A | 公开(公告)日: | 2014-01-01 |
发明(设计)人: | 廖小飞;金海;张宇 | 申请(专利权)人: | 华中科技大学 |
主分类号: | H04L12/803 | 分类号: | H04L12/803 |
代理公司: | 华中科技大学专利中心 42201 | 代理人: | 朱仁玲 |
地址: | 430074 湖北*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种大规模行为模拟应用中的负载均衡方法,包括以下步骤:建立两个哈希表,其中一个用于存放块中的所有模拟对象,另一个用于存放域中的所有块信息,并对该哈希表进行初始化,重复增量计算各域的负载,直到大规模行为模拟应用结束为止,以生成增量计算负载后的域D,对域D进行划分以生成域集合Dset,其中划分后的域集合Dset中每一个域D2的负载均为T1,且其中的块都是相互连接的,将域D和其在划分后的域集合Dset中的相邻域进行合并,其中合并后的域D的负载为T1,且域D中的块都是相互连接的,执行各数据处理器之间的域调度,实现数据处理器的负载均衡。本发明能够解决大规模行为模拟应用中现有方法难以有效消除的负载不均衡问题。 | ||
搜索关键词: | 一种 大规模 行为 模拟 应用 中的 负载 均衡 方法 | ||
【主权项】:
一种大规模行为模拟应用中的负载均衡方法,是应用在一种负载均衡器中,该负载均衡器用于迁移其所在数据处理器中数据管理器的数据,以实现数据处理器之间的负载均衡,其特征在于,所述方法包括以下步骤:(1)建立两个哈希表,其中一个用于存放块中的所有模拟对象,另一个用于存放域中的所有块信息,并对该哈希表进行初始化;(2)重复增量计算各域的负载,直到大规模行为模拟应用结束为止,以生成增量计算负载后的域D;本步骤包括以下子步骤:(2‑1)判断是否所有新一轮被处理完的模拟对象都已经被处理过,如果是则进入步骤(2‑8),否则进入步骤(2‑2);(2‑2)获取各域中被处理后的模拟对象O的新位置信息(Ox,Oy,Oz);(2‑3)根据模拟对象的新位置信息并按照以下公式计算此模拟对象所在块的编号Knew: x = Ox / S x y = Oy / S y z = Oz / S z Knew = x + y × Nx + z × Nx × Ny 其中Nx,Ny和Nz是用户定义的沿大规模行为模拟应用模拟空间x,y和z轴的块数量,Sx、Sy和Sz是块分别沿x,y和z轴的大小;(2‑4)判断计算所得的块编号Knew和被处理后的模拟对象O所在的块编号是否相同,如果不同,则进入步骤(2‑5),否则返回步骤(2‑1);(2‑5)将此模拟对象从旧编号为Kold的块中取出,并将此模拟对象插入编号为Knew的块中,并更新块表中编号为Kold和编号为Knew的块的模拟对象数信息和模拟对象列表信息;(2‑6)判断编号为Kold和编号为Knew的块的模拟对象数量变化值Δ|P|是否超过阈值T,如果超过,就进入步骤(2‑7),否则返回步骤(2‑1);(2‑7)增量更新编号为Kold和编号为Knew的块所在域的负载和该域相邻域的负载,然后返回步骤(2‑1);(2‑8)判断是否所有域都已经处理完毕,若是则进入步骤(5),否则进入步骤(2‑9);(2‑9)判断所有增量计算负载后的域D的负载是否大于Tmax,如果是,则进入步骤(3),否则进入步骤(2‑10);(2‑10)判断所有增量计算负载后的域D的负载是否小于Tmin,如果是,则进入步骤(4),否则返回步骤(2‑8);(3)对域D进行划分以生成域集合Dset,其中划分后的域集合Dset中每一个域D2的负载均为T1,且其中的块都是相互连接的;本步骤包括以下子步骤:(3‑1)新建一个域D2,从域D的边缘取出一块负载小于T1的块P1,并将其插入域D2;(3‑2)获取域D中所有与块P1相连接的块集合Pset;(3‑3)从块集合Pset中取出块P2;(3‑4)判断块P2插入域D2后,D2的负载是否少于T1,如果是,则进入步骤(3‑5),否则进入步骤(3‑7);(3‑5)将块P2插入D2,并更新D2的负载;(3‑6)获取D中与P2相邻的块集合,并将其并入集合Pset,然后返回步骤(3‑3);(3‑7)将D2插入结果域集合Dset;(3‑8)判断D的负载是否仍然大于Tmax,如果是,则返回步骤(3‑1),否则返回步骤(2‑8);(4)将域D和其在划分后的域集合Dset中的相邻域进行合并,其中合并后的域D的负载为T1,且域D中的块都是相互连接的;(5)执行各数据处理器之间的域调度,实现数据处理器的负载均衡, 其中同一个数据处理器的各个域相互连接。(6)通知任务执行器开始大规模行为模拟应用新一轮的执行;(7)判断大规模行为模拟程序新一轮计算是否结束,如果是,则进入步骤(8),否则返回步骤(7);(8)判断大规模行为模拟程序是否已经达到用户定义的结束条件,如果是,则结束负载均衡器的运行,否则返回步骤(2)。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华中科技大学,未经华中科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201310398936.X/,转载请声明来源钻瓜专利网。