System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种光纤反射内存网络中节点的负载均衡方法技术_技高网

一种光纤反射内存网络中节点的负载均衡方法技术

技术编号:40650408 阅读:4 留言:0更新日期:2024-03-13 21:28
本发明专利技术涉及一种光纤反射内存网络中节点的负载均衡方法,属于半实物仿真领域,解决了现有仿真节点负载不均衡的问题。方法包括:获取计算节点的属性,包括可执行任务的类型;各计算节点随机地抢占不同的序号;根据节点可执行任务的类型将计算节点分为L类,任一类L_i为可执行Type_i类任务的节点序号序列;以Type_i为键,以类L_i为值,构建哈希表,并对每一类中的若干节点排序;节点读取仿真任务,根据任务类型Type_i查找哈希表,从类L_i中选取负载状况和性能最优的节点执行该任务,更新其负载情况以更新其顺序;再次读取任务,直至所有任务得到分配。上述方式可根据任务属性为其快速匹配最合适的节点,最终使网络中所有节点负载均衡,使计算资源的利用率最大化。

【技术实现步骤摘要】

本专利技术涉及半实物仿真,尤其涉及一种光纤反射内存网络中节点的负载均衡方法


技术介绍

1、当仿真任务所需的模型实例数较多时,往往需要采用包含若干个节点的分布式仿真系统进行仿真计算,才可以保证多个模型解算的实时性,其中,分布式仿真系统为多个仿真节点通过光纤网络连接形成的环网。

2、不同仿真任务所需调用的模型种类和每类模型的数量均不相同,因此,在每次执行仿真任务之前,均需要根据仿真任务的需求,从光纤反射内存网络中选取执行该仿真任务的仿真节点,常用的方式是:从网络中选取1个调度节点,通过光纤反射板卡下发仿真任务,仿真任务的属性由其所需的模型种类和数量描述,接入光纤反射内存网络中的计算节点根据自身属性和仿真任务的属性进行竞争,动态、随机地提供仿真计算。

3、但是,上述竞争任务的方式很容易导致光纤反射内存网络中节点的负载不均衡,造成计算资源的浪费。


技术实现思路

1、鉴于上述的分析,本专利技术实施例旨在提供一种光纤反射内存网络中节点的负载均衡方法,用以解决现有光纤反射内存网络内计算节点之间任务分配不均衡,造成计算资源浪费的问题。

2、本专利技术实施例提供了一种光纤反射内存网络中节点的负载均衡方法,包括:

3、从光纤反射内存网络中确定1个调度节点和n个计算节点,获取n个计算节点的属性;所述节点属性包括节点可执行任务的类型type_i;

4、各计算节点随机地抢占不同的序号z,其中z=1,2,...,n;

5、根据计算节点可执行任务的类型type_i,将n个计算节点分为l类;其中,类l_i为若干可执行type_i类任务的节点序号形成的序列;

6、以任务类型type_i为键,以type_i相应的类l_i为值,构建哈希表;

7、各计算节点读取调度节点下发的仿真任务,根据任务类型type_i查找哈希表,相应的类l_i中负载状况和性能最优的计算节点执行该任务;再次读取调度节点下发的任务,重复上述操作,直至所有任务均得到分配。

8、进一步的,所述节点属性还包括:节点可执行type_i类任务的数量type_i_q以及节点的最大并发数p_i;属性type_i_q以及p_i用于确定节点的负载状况和性能。

9、具体的,所述哈希表中每一类中的若干节点按照负载状况和性能进行排序,排序方式为三重排序,包括:

10、步骤s201、计算类l_i中每一个节点的k值,其中,对于任一节点j有:kj=r_num_j/p_j,表征节点j当前负载各类任务的能力,r_num_j为节点j当前执行的各类任务的总数,p_j为任一节点j的最大并发数;

11、步骤s202、将类l_i中的若干节点,按照其k值升序排序,即当前负载能力强的节点顺序靠前;

12、步骤s203、若类l_i中多个节点具有相同的k值,则计算该多个节点的w值,其中,对于任一节点j有:wj=type_i_q/p_j,表征节点j执行type_i类型任务的能力;

13、步骤s204、将具有相同k值的多个节点,按照w值降序排序,即节点执行type_i类型任务的能力越强,表明其对该类任务的优先级越高,顺序越靠前;

14、步骤s205、若类l_i中多个节点具有相同的w值,则统计该节点当前分配到type_i类型任务的数量ri_num_j,获取该节点当前负载type_i类型任务的能力;

15、步骤s206、将具有相同w值的多个节点,按照ri_j_num值升序排序,即节点当前分配到type_i类型任务的数目越少,顺序越靠前。

16、具体的,所述类中负载状况和性能最优的计算节点,为该类中顺序最靠前的节点。

17、进一步的,所述根据任务类型type_i查找哈希表,类l_i中负载状况和性能最优的计算节点执行该任务后,该计算节点更新自身的r_num_j以及ri_num_j,基于更新的r_num_j以及ri_num_j,采用三重排序的方式,更新自身在类l_i中的顺序。

18、具体的,所述各计算节点随机地抢占不同的序号z,包括:

19、步骤s101、利用不同的随机数种子,为各个计算节点产生各不相同的、处于区间[tmin,tmax]μs的随机数,作为各个计算节点的延迟时间;

20、步骤s102、各计算节点按照其延迟时间,依次抢占光纤反射内存网络中的序号z;

21、步骤s103、比较延迟时间最长的节点所抢占的序号zmax是否与计算节点数目n相同;若是,则各计算节点抢占到不重复的序号,结束步骤s2;若否,则重复以上步骤,重新抢占序号。

22、进一步的,所述比较延迟时间最长的节点所抢占的序号zmax是否与计算节点数目n相同时,zmax按照以下方式获取:

23、选择首地址为a的区域a1~an′,用于分别存储各个计算节点抢占到的序号;其中,地址相对于首地址a的偏移量越大,该处存储的节点序号越大;

24、遍历区域a1~an′,读取其内存储的最后一个非零值,作为节点的最大序号zmax。

25、具体的,所述不同的随机数种子,采用函数random_device生成;所述产生处于区间[tmin,tmax]μs的随机数,采用随机数引擎mt19937完成。

26、具体的,所述调度节点下发仿真任务,包括:

27、从光纤地址中确定区域b,调度节点在此处写入仿真任务总数;

28、从光纤地址中确定区域c,调度节点在此处写入每个任务的类型。

29、进一步的,所述各个计算节点读取调度节点下发的仿真任务,包括:

30、计算节点对区域c中的数据进行遍历读取,获取每一个仿真任务的类型;所述仿真任务的类型对应于哈希表中的键。

31、与现有技术相比,本专利技术至少可实现如下有益效果之一:

32、1、以任务类型为键,以可执行该类任务的节点形成的类为值,构建哈希表,而哈希表相对于其他类型的数据结构,具有快速查找、更改、插入或删除数据的优势,所以在根据任务属性查找可执行该类任务的节点时速度更快;

33、2、对每一个类中的若干节点进行三重快速排序,排序依据综合考虑了节点的最大并发数、当前负载的任务总数、以及当前负载某类任务的数量,其中节点的最大并发数受节点连接的设备种类和数量的影响而变化,因此,根据上述三重排序生成的节点顺序更可靠;

34、3、基于哈希表以及三重排序方式,可对各类仿真任务快速、准确地分配至合适的节点,最终使网络内各个节点的负载尽可能地均衡,提高了计算节点资源的利用率。

35、本专利技术中,上述各技术方案之间还可以相互组合,以实现更多的优选组合方案。本专利技术的其他特征和优点将在随后的说明书中阐述,并且,部分优点可从说明书中变得显而易见,或者通过实施本专利技术而了解。本专利技术的目的和其他优点可通过说明书以及附图中所特别指出的内容中来实现和获得。

本文档来自技高网...

【技术保护点】

1.一种光纤反射内存网络中节点的负载均衡方法,其特征在于,包括:

2.根据权利要求1所述的光纤反射内存网络中节点的负载均衡方法,其特征在于,所述节点属性还包括:节点可执行Type_i类任务的数量Type_i_Q以及节点的最大并发数P_i;属性Type_i_Q以及P_i用于确定节点的负载状况和性能。

3.根据权利要求2所述的光纤反射内存网络中节点的负载均衡方法,其特征在于,所述哈希表中每一类中的若干节点按照负载状况和性能进行排序,排序方式为三重排序,包括:

4.根据权利要求3所述的光纤反射内存网络中节点的负载均衡方法,其特征在于,所述类中负载状况和性能最优的计算节点,为该类中顺序最靠前的节点。

5.根据权利要求4所述的光纤反射内存网络中节点的负载均衡方法,其特征在于,所述根据任务类型Type_i查找哈希表,类L_i中负载状况和性能最优的计算节点执行该任务后,该计算节点更新自身的R_Num_j以及Ri_Num_j,基于更新的R_Num_j以及Ri_Num_j,采用三重排序的方式,更新自身在类L_i中的顺序。

6.根据权利要求1所述的光纤反射内存网络中节点的负载均衡方法,其特征在于,所述各计算节点随机地抢占不同的序号z,包括:

7.根据权利要求6所述的光纤反射内存网络中节点的负载均衡方法,其特征在于,所述比较延迟时间最长的节点所抢占的序号zmax是否与计算节点数目N相同时,zmax按照以下方式获取:

8.根据权利要求4所述的光纤反射内存网络中节点的负载均衡方法,其特征在于,所述不同的随机数种子,采用函数random_device生成;所述产生处于区间[Tmin,Tmax]μs的随机数,采用随机数引擎mt19937完成。

9.根据权利要求6所述的光纤反射内存网络中节点的负载均衡方法,其特征在于,所述调度节点下发仿真任务,包括:

10.根据权利要求1所述的光纤反射内存网络中节点的负载均衡方法,其特征在于,所述各个计算节点读取调度节点下发的仿真任务,包括:

...

【技术特征摘要】

1.一种光纤反射内存网络中节点的负载均衡方法,其特征在于,包括:

2.根据权利要求1所述的光纤反射内存网络中节点的负载均衡方法,其特征在于,所述节点属性还包括:节点可执行type_i类任务的数量type_i_q以及节点的最大并发数p_i;属性type_i_q以及p_i用于确定节点的负载状况和性能。

3.根据权利要求2所述的光纤反射内存网络中节点的负载均衡方法,其特征在于,所述哈希表中每一类中的若干节点按照负载状况和性能进行排序,排序方式为三重排序,包括:

4.根据权利要求3所述的光纤反射内存网络中节点的负载均衡方法,其特征在于,所述类中负载状况和性能最优的计算节点,为该类中顺序最靠前的节点。

5.根据权利要求4所述的光纤反射内存网络中节点的负载均衡方法,其特征在于,所述根据任务类型type_i查找哈希表,类l_i中负载状况和性能最优的计算节点执行该任务后,该计算节点更新自身的r_num_j以及ri_num_j,基于更新的r_num...

【专利技术属性】
技术研发人员:董晨韩健白成超
申请(专利权)人:北京机电工程研究所
类型:发明
国别省市:

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

1