CN104281494B - 一种基于插值算法面向计算通信联合优化的负载均衡方法 - Google Patents

一种基于插值算法面向计算通信联合优化的负载均衡方法 Download PDF

Info

Publication number
CN104281494B
CN104281494B CN201410503520.4A CN201410503520A CN104281494B CN 104281494 B CN104281494 B CN 104281494B CN 201410503520 A CN201410503520 A CN 201410503520A CN 104281494 B CN104281494 B CN 104281494B
Authority
CN
China
Prior art keywords
time
processor
data block
responsibility
call duration
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201410503520.4A
Other languages
English (en)
Other versions
CN104281494A (zh
Inventor
杨广文
刘圣卓
张志远
陈宇澍
姜进磊
韩宝玲
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tsinghua University
Original Assignee
Tsinghua University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tsinghua University filed Critical Tsinghua University
Priority to CN201410503520.4A priority Critical patent/CN104281494B/zh
Publication of CN104281494A publication Critical patent/CN104281494A/zh
Application granted granted Critical
Publication of CN104281494B publication Critical patent/CN104281494B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本发明涉及一种基于插值算法的面向计算通信联合优化的负载均衡方法,属于高性能科学计算的应用领域,该方法包括以运算的实测计算量和通信量为基础值,利用插值算法以计算时间和责任通信时间的实测值推算计算量累加函数和通信量变化率函数的近似函数,以该函数为参照通过多次迭代获得最佳的数据划分;监视每次运算的计算量和通信量变化,分析处理器的负载均衡状况并预测负载均衡的趋势,当负载均衡的效率或预测值低于设定的阈值时,根据当前的计算量和通信量的实测值再次计算量累加函数和通信量变化率函数的近似函数,并对数据块的划分进行动态调整。本方法旨在技术领域提升科学计算的负载均衡效率,进而提高并行运行效率,节约超级计算资源。

Description

一种基于插值算法面向计算通信联合优化的负载均衡方法
技术领域
本发明属于高性能可扩展并行数值模拟应用领域,特别涉及一种基于插值算法的面向计算通信联合优化的负载均衡方法。
背景技术
在高性能可扩展并行数值模拟应用领域,如流体动力、高温高压物理过程模拟计算等,常常需要使用成百上千的处理器并行执行运算任务。这些计算通常具有如下特点:(1)数据元素通常可以被映射到静态且均匀的多维网格上;(2)不同数据元素的运算时间可能不同;(3)数据元素的运算量随计算的时间步发生变化且相近时间步的变化很小;(4)计算的通信通常只与相邻数据元素相关。为提高计算效率,需使每个处理器在相同时间步的计算时间和通信时间(不含等待时间)之和基本相当,并尽可能降低通信延迟。动态负载均衡机制通过合理划分数据元素使得每个处理器承担的计算任务相对均衡,并能根据处理器的负载变化对其进行动态调整。
负载均衡问题可定义为:设需要处理的N个数据元素分布在一个多维空间定义为Vd表示d维空间(d=1,2,3,4),用来执行并行运算的处理器共M个定义为{(pi)|1≤i≤M},通常M<<N;N个数据元素被依据一定规则划分为M个数据块,每个处理器负责一个数据块。在某个时间步处理器的有效运算时间(包括有效的计算时间和通信时间)分别为{(Ci)|1≤i≤M},则该时间步的负载均衡效率E可以定义为:
显然E≤1,E越大负载越均衡,而动态负载均衡的目的是使E的值在运算过程中大部分时间保持在一定的阈值以上且越大越好。负载均衡通常在两个时机发挥作用:第一,是计算开始之前,这时需要对数据元素的计算量等进行估计,并对多维空间分布的数据元素进行划分;第二,在计算阶段发现处理器负载不均衡(即负载均衡效率低于设定的阈值)时,对数据划分进行动态调整。
已有的一种已有的针对并行计算的负载均衡方法通常可以分为初始划分和动态调整两个阶段:
具体实现步骤包括两个阶段。
初始划分阶段包括:
步骤1-1)采用空间填充曲线法对多维空间分布的数据元素进行排序;
步骤1-2)平均划分(使每个数据块的数据元素个数相当)条件下,测量一个时间步各处理器的计算时间;
步骤1-3)假定位于同一处理器的数据元素均摊该处理器的计算时间(包括计算时间和通信时间),根据处理器的计算时间可以得到每个数据元素近似的计算时间;
步骤1-4)根据数据元素的近似计算时间,重新划分数据块,使每个数据的计算时间相当;
步骤1-5)根据数据块的新划分在处理器之间调整数据元素;继续运行一个时间步,并测量各处理器的有效计算时间;
步骤1-6)计算负载均衡效率,如果负载均衡效率没有达到要求,则转到步骤1-3),重新进行划分数据块;如果负载均衡效率达到要求,则继续运行,进入动态调整阶段;
阶段2:动态调整阶段
步骤2-1)根据设定的时间间隔,定时查看各处理器的负载均衡效率,收集n个时间步各处理器的计算时间,如果n个时间步的负载均衡的效率均低于设定的阈值(如80%),则转入步骤2-2),否则继续运行,等待下一个时间间隔;
步骤2-2)收集最近一个时间步的计算时间;转入步骤1-3)继续执行。
以上方法存在两点不足:
第一,该方法在对数据元素的计算时间进行估计时,没有将计算时间和通信时间分开考虑,计算量估计不精确、调整次数多;
第二,简单假设同一处理器的数据元素计算量相同,数据元素的计算量估计误差较大,收敛周期长。
发明内容
本发明的目的是为克服已有技术的不足,提出一种基于插值算法的面向计算通信联合优化的负载均衡方法,旨在流体动力、高温高压物理过程模拟计算等技术领域提升参与运算的各处理器任务的均衡性,提高运行效率,节约计算资源。
本发明提出的一种基于插值算法的面向计算通信联合优化的负载均衡方法,该方法分初始划分和动态调整两个阶段,其特征在于,初始划分阶段包括以运算的实测计算量和责任通信量作为基础值,利用插值算法推算计算量累加函数和通信量变化率函数的近似函数,然后以这两个函数为参照通过多次迭代获得最佳的数据划分方案;动态调整阶段包括并行程序运行过程,监视每次运算的计算量和通信量变化,分析处理器的负载均衡状况并预测负载均衡的趋势,当负载均衡的效率或预测值低于设定的阈值时,根据当前的计算量和通信量的实测值再次计算量累加函数和通信量变化率函数的近似函数,并对数据块的划分进行动态调整。
本发明的技术特点:
本发明采用的基于实测法和插值近似的高效动态负载均衡方法首先面向计算时间和通信时间的联合优化;其次,以责任通信时间作为通信时间标准,避免通信等待时间和与运算重叠时间的影响;再次,利用插值近似法计算计算量密度函数和通信量函数的导函数,根据各处理器的实测时间计算所求函数,根据求得函数利用迭代法划分数据块;最后,在动态调整阶段引入基于时间序列的预测方法预测计算的负载均衡趋势,降低负载的调整频率。
本发明的有益效果:
(1)在进行任务划分时,以责任通信时间(即不包括等待时间和与计算重叠的时间)作为通信时间标准,使对处理器的通信量估计更加准确;
(2)对计算量和通信量的估算依据来自实测值,更能体现了计算的实际负载情况;
(3)分别利用计算量和通信量的不同特性,相较以往的将通信量归为计算量统一计算的方法,计算结果更加准确;
(4)采用迭代法划分数据块的方法,可以利用通信量的变化特点,提高任务划分的均衡性;
(5)引入插值近似函数估算计算量密度函数和通信量相关函数,可减少负载均衡的调整次数,缩短调整时间。
该方法主要针对数据元素可以映射到多维空间网格且各数据元素的运算量随时间变化大型并行科学计算的初始任务划分和动态任务调整,以基于有限差分方法的数值天气预报模式为例,数值天气预报计算量大,时效要求强,一般需要在大规模的计算机集群上并行执行。计算区域的非规则性、各格点计算量的非均匀性以及复杂的通信方式导致各计算节点计算任务不均衡,采用本方法,利用实测的计算时间和责任通信时间准确估计计算量和通信量相关函数,动态地为各计算节点均衡划分计算任务,缩短计算时间,提高计算资源的利用率。由于负载均衡算法具有普适性,该方法同样适合一维或二维分布的数据元素的高性能科学计算的负载划分,任何熟悉该技术的人在本发明所揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护之内。
附图说明
图1为本方法的处理流程图。
具体实施方式
本发明提出了一种基于插值法的大型并行计算动态负载均衡方法,下面结合附图及具体实施方式详细说明本发明的内容。
本发明提出的一种基于插值算法面向计算通信联合优化的负载均衡方法,本发明的具体实现步骤如图1所示,其特征在于,包括初始划分和动态调整两个阶段,其中,
初始划分阶段包括:
步骤1-1)采用空间填充曲线法对多维空间分布的数据元素进行排序,对处理器编号;具体实现为:
利用空间填充曲线法将分布于多维空间的待处理的数据元素映射到一维空间中(整个运算过程只需映射一次),本实施例的空间填充曲线法中采用希尔伯特(Hilbert)曲线;设N个数据元素从多维空间映射到一维空间,映射后的N个数据元素排列记为x1,x2,…,xN;设参与运算的处理器有M个,M<<N,将M个处理器编号,记为p1,p2,…,pM
步骤1-2)对数据元素平均划分(每个处理器所负责数据元素个数相同)的条件下,测量各处理器一个时间步的计算时间和责任通信时间;对平均划分的数据元素进行微调后,测量各处理器一个时间步的责任通信时间;具体实现为:
第一次划分,将x1,x2,…,xN平均分成M块,分配到各处理器并启动运行一个时间步,得到各处理器计算时间TCj,责任通信时间TRj1;第二次划分,对第一次划分的各数据块进行微调,依次将第一次划分的数据块的后面k(k可选为数据块包含数据元素个数的10%)个元素移到下一个数据块,最后一个数据块只接收前一个数据块的元素(而不向其它数据块移出数据元素);将微调后的数据块分配到各处理器并启动运行一个时间步,得到各处理器责任通信时间TRj2
步骤1-3)根据实测的各处理器的计算时间,利用插值法求解计算量累加函数;具体实现为:
设在x1,x2,…,xN排列下,数据元素x的计算量密度函数为f(t,x),t为时间参数(虽然计算量和通信量都是时间的函数,但是在大部分科学计算中,对于相邻的n个时间步处理器的计算量通常变化很小,因此前一个时间步的计算量与下一个时间步的计算量近似相等);在n(n≤3)个时间步内,假设f保持不变,则计算量密度函数表示为与时间无关的函数f(x)。
(xj1,xj2)为处理器pj负责的数据块,则处理器的计算时间为TCj表示为
全部处理器的计算时间为:
假设函数f(x)在x1,x2,…,xN排列中选取的M个点X1,X2,…,XM上有值,X1,X2,…,XM的选取可以与数据块的边界重合也可以不重合。
对于Xi<x<Xi+1,可以得到f(x)的插值近似函数
将(2)式代入方程组(1),可以得到以f(X1),f(X2),…,f(XM)为未知数的线性方程组,求解可得f(x)在X1,X2,…,XM处的值。利用插值算法可以求得计算量的累加函数F(x),F(x)表示为X1,X2,…,XM之间的分段形式。
步骤1-4)根据实测的各处理器的计算时间,利用插值法求解责任通信时间函数的导函数;具体实现为:
处理器pj的责任通信时间函数为g(t,xj1,xj2),xj1,xj2为处理器所负责的数据元素的起点和终点。在较少的n(n≤3)个时间步内,假设g保持不变,则处理器pj的责任通信时间函数表示为g(xj1,xj2)。
假设g(x)为连续函数且在x点有导数,求解g(x)在指定点的导数G'(x);
g(xj1,xj2)代表某时间步处理器pj的责任通信时间,元素xj1+Δx为xj1的右邻点,可得:
g(xj1+Δx,xj2)=-G'(xj1)Δx+g(xj1,xj2) (3)
g(xj1,xj2+Δx)=G'(xj2)Δx+g(xj1,xj2) (4)
(xj1,xj2)和(xj3,xj4)分别为处理器pj在两次划分中所负责的数据块,两个数据块划分的大部分数据元素重叠,利用式(3)、(4)分别对处理器负责的数据块的左右两端做近似处理得:
为计算通信时间函数,测试两次不同划分的责任通信时间;处理器pj两次划分的责任通信时间分别为TRj1,TRj2,则,
假设函数G'(x)在x1,x2,…,xN排列中选取的M个点X1,X2,…,XM上有值,X1,X2,…,XM的选取可以与数据块的边界重合也可以不重合。
对于Xi<x<Xi+1,可以得到G'(x)的插值近似函数
将式(7)代入形如式(6)的所有处理器的方程组,可得以G'(X1),G'(X2),…,G'(XM)为未知数的线性方程组,求解可得G'(x)在X1,X2,…,XM处的值,利用插值法可以求得G'(x)的近似函数,G'(x)表示为X1,X2,…,XM之间的分段形式。
步骤1-5)根据计算量密度函数和责任通信时间函数,以及根据指定的数据块的平均计算量和通信量,为每个数据块分配数据元素;如任务分配不平均,修改数据块指定的平均计算量和通信量,迭代求解数据块划分方案;具体实现为:
根据已知的F(x)、G'(x),在x1,x2,…,xN上求一组X'0,X'1,…,X'M(其中X'0=x1,X'0=xN),使式(8)最小,
MAX(F(X'j)-F(X'j-1)+g(X'j,X'j-1)) (8)
F(X'j)-F(X'j-1)代表了以X'j-1和X'j分别为起点和终点的数据块的计算量,g(X'j,X'j-1)则代表了这个数据块的责任通信量。
步骤1-5-1)设 为各处理器计算时间的平均值;g0为各处理器责任通信时间的平均值;
步骤1-5-2)使用累加法求X'1在数据元素x1,x2,…,xN中使式(9)成立的最右的元素xi
其中F(X'0)=0,(x11,x12分别为第一个数据块的起点和终点)
由式(9)得到的X'1,则(x1,X'1)为第一个处理器p1的预分配数据块(也表示为(X'0,X'1));
步骤1-5-3)根据已求得的X'1,结合式(10)利用递推法可以依次求得剩余的数据块;
其中,
式(11)中,g(xi1,xi2)为测试值;
步骤1-5-4)根据具体情况,对参数g0调整后重新进行数据块划分;
第一种情况,当递推法计算到第i步(i<M),x1,x2,…,xN中元素已经取尽,这时计算终止;说明处理器分配的计算量过大,g0取值应当减小。新的g0可以设为回到步骤1-5-2),将新的g0代入式(9)重新开始迭代计算;
第二种情况,计算进行了M步,但x1,x2,…,xN中的元素还没有取尽,设XM=xk,则说明g0取值应当增大。新的g0设定为回到步骤1-5-2),将新的g0代入式(9)重新开始迭代计算;
第三种情况,当计算到第M步,XM取值为x1,x2,…,xN集合的最后一个元素,且小于一定的值(如)时,迭代停止;
第四种情况,迭代达到设定的次数(一般超过20次),说明计算量和通信量无法达到相对均衡,此时迭代停止。
步骤1-5-5)当迭代停止时,可以求得一组X'0,X'1,…,X'M,以X'0,X'1,…,X'M作为分割点将数据元素排列x1,x2,…,xN分成M个数据块,由此得到一次划分;
步骤1-6)将划分的数据块分配给所有的处理器,启动运行n个时间步,收集的计算时间和通信时间分析负载均衡的效率;如果负载均衡效率低于要求门限(E≤90%),收集最近一个时间步各处理器计算时间TCj,责任通信时间TRj1;采用步骤1-2)相同的数据块划分微调方法,对现有划分进行微调后,运行一个时间步,得到各处理器的责任通信时间TRj2;进入步骤1-3)重新进行数据块划分;如果负载均衡效率达到要求门限,则继续运行,进入第二阶段进行动态调整;
阶段2:动态调整阶段
步骤2-1)根据设定的时间间隔(通常可以设置为一分钟到几十分钟),定时查看负载均衡效率,收集n(n≤20)个时间步各处理器的计算时间和责任通信时间,根据这n个时间步的负载均衡的效率和历史信息通过基于时间序列方法预测未来m(m≥30)个时间步的负载均衡效率,如果平均值高于设定的阈值(如80%),则继续运行,等待下个时间间隔再继续检测,否则启动负载动态调整,执行步骤2-2);
步骤2-2)进入动态负载调整阶段后,得到最近一个时间步收集的各处理器计算时间TCj,责任通信时间TRj1。为求解计算量密度函数f和通信量函数的导数G',还需要在不同划分情况下的通信时间的测试值。采用步骤1-2)相同的数据块划分微调方法,对现有划分微调后,运行一个时间步,得到各处理器的责任通信时间TRj2。转入步骤1-3)继续运行,重新进行数据块划分。

Claims (2)

1.一种基于插值算法的面向计算通信联合优化的负载均衡方法,该方法分初始划分和动态调整两个阶段,其特征在于,初始划分阶段包括以运算的实测计算量和通信量作为基础值,利用插值算法以计算时间和责任通信时间的实测值推算计算量累加函数和通信量变化率函数的近似函数,然后以这两个函数为参照通过多次迭代获得最佳的数据划分方案;动态调整阶段包括并行程序运行过程,监视每次运算的计算量和通信量变化,分析处理器的负载均衡状况并预测负载均衡的趋势,当负载均衡的效率或预测值低于设定的阈值时,根据当前的计算量和通信量的实测值再次计算量累加函数和通信量变化率函数的近似函数,并对数据块的划分进行动态调整,所述责任通信时间为通信时间标准,为不包括等待时间和与计算重叠的时间的信通时间。
2.如权利要求1所述方法,其特征在于,所述初始划分阶段具体包括以下步骤:
步骤1-1)采用空间填充曲线法对多维空间分布的数据元素进行排序,对处理器编号;设N个数据元素从多维空间映射到一维空间,映射后的N个数据元素排列记为x1,x2,…,xN;设参与运算的处理器有M个,M<<N,将M个处理器编号,记为p1,p2,…,pM
步骤1-2)对数据元素平均划分的条件下,测量各处理器一个时间步的计算时间和责任通信时间;对平均划分的数据元素进行微调后,测量各处理器一个时间步的责任通信时间;具体包括:
第一次划分,将x1,x2,…,xN平均分成M块,分配到各处理器并启动运行一个时间步,得到各处理器计算时间TCj,责任通信时间TRj1;第二次划分,对第一次划分的各数据块进行微调,依次将第一次划分的数据块的后面k个元素移到下一个数据块,最后一个数据块只接收前一个数据块;将微调后的数据块分配到各处理器并启动运行一个时间步,得到各处理器责任通信时间TRj2
步骤1-3)根据实测的各处理器的计算时间,利用插值法求解计算量累加函数;具体实现为:
设在x1,x2,…,xN排列下,数据元素x的计算量密度函数为f(t,x),t为时间参数;在n个时间步内,n≤3,假设f保持不变,则计算量密度函数表示为与时间无关的函数f(x);
(xj1,xj2)为处理器pj负责的数据块,则处理器的计算时间为TCj表示为
全部处理器的计算时间为:
&Integral; x 11 x 12 f ( x ) = T C 1 &Integral; x 21 x 22 f ( x ) = T C 2 ... &Integral; x M 1 x M 2 f ( x ) = T C 3 - - - ( 1 )
假设函数f(x)在x1,x2,…,xN排列中选取的M个点X1,X2,…,XM上有值;
对于Xi<x<Xi+1,得到f(x)的插值近似函数:
f ( x ) = ( x - X i ) f ( X i + 1 ) + ( X i + 1 - x ) f ( X i ) X i + 1 - X i - - - ( 2 )
将(2)式代入方程组(1),得到以f(X1),f(X2),…,f(XM)为未知数的线性方程组,求解可得f(x)在X1,X2,…,XM处的值;利用插值算法求得计算量的累加函数F(x),F(x)表示为X1,X2,…,XM之间的分段形式;
步骤1-4)根据实测的各处理器的计算时间,利用插值法求解责任通信时间函数的导函数;具体实现为:
处理器pj的责任通信时间函数为g(t,xj1,xj2),xj1,xj2为处理器所负责的数据元素的起点和终点;在较少的n个时间步内,n≤3,假设g保持不变,则处理器pj的责任通信时间函数表示为g(xj1,xj2);
假设g(x)为连续函数且在x点有导数,求解g(x)在指定点的导数G'(x);
g(xj1,xj2)代表某时间步处理器pj的责任通信时间,元素xj1+Δx为xj1的右邻点,得到:
g(xj1+Δx,xj2)=-G'(xj1)Δx+g(xj1,xj2) (3)
g(xj1,xj2+Δx)=G'(xj2)Δx+g(xj1,xj2) (4)
(xj1,xj2)和(xj3,xj4)分别为处理器pj在两次划分中所负责的数据块,两个数据块划分的大部分数据元素重叠,利用式(3)、(4)分别对处理器负责的数据块的左右两端做近似处理得:
g ( x j 3 , x j 4 ) - g ( x j 1 , x j 2 ) = - G &prime; ( x j 1 + x j 3 2 ) ( x j 3 - x j 1 ) + G &prime; ( x j 2 + x j 4 2 ) ( x j 4 - x j 2 ) - - - ( 5 )
为计算通信时间函数,测试两次不同划分的责任通信时间;处理器pj两次划分的责任通信时间分别为TRj1,TRj2,则,
G &prime; ( x j 2 + x j 4 2 ) ( x j 4 - x j 2 ) - G &prime; ( x j 1 + x j 3 2 ) ( x j 3 - x j 1 ) = T R j 2 - T R j 1 - - - ( 6 )
假设函数G'(x)在x1,x2,…,xN排列中选取的M个点X1,X2,…,XM上有值;
对于Xi<x<Xi+1,得到G'(x)的插值近似函数:
G &prime; ( x ) = ( x - X i ) G &prime; ( X i + 1 ) + ( X i + 1 - x ) G &prime; ( X i ) X i + 1 - x i - - - ( 7 )
将式(7)代入形如式(6)的所有处理器的方程组,得到以G'(X1),G'(X2),…,G'(XM)为未知数的线性方程组,求解得到G'(x)在X1,X2,…,XM处的值,利用插值法求得G'(x)的近似函数,G'(x)表示为X1,X2,…,XM之间的分段形式;
步骤1-5)根据计算量密度函数和责任通信时间函数,以及根据指定的数据块的平均计算量和通信量,为每个数据块分配数据元素;当分配不平均时,修改为数据块指定的平均计算量和通信量,迭代求解数据块划分方案;具体实现为:
根据已知的F(x)、G'(x),在x1,x2,…,xN上求一组X'0,X'1,…,X'M其中X'0=x1,X'0=xN,使式(8)最小:
MAX(F(X'j)-F(X'j-1)+g(X'j,X'j-1)) (8)
F(X'j)-F(X'j-1)表示以X'j-1和X'j分别为起点和终点的数据块的计算量,g(X'j,X'j-1)则表示这个数据块的责任通信量;
步骤1-5-1)设 为各处理器计算时间的平均值;g0为各处理器责任通信时间的平均值;
步骤1-5-2)使用累加法求X'1在数据元素x1,x2,…,xN中使式(9)成立的最右的元素xi
F ( X &prime; 1 ) - F ( X &prime; 0 ) + g ( x 1 , X &prime; 1 ) &le; F &OverBar; + g 0 2 - - - ( 9 )
其中F(X'0)=0,x11,x12分别为第一个数据块的起点和终点;
由式(9)得到的X'1,则(x1,X'1)为第一个处理器p1的预分配数据块,表示为(X'0,X'1);
步骤1-5-3)根据已求得的X'1,结合式(10)利用递推法依次求得剩余的数据块;
F ( X &prime; j ) - F ( X &prime; j - 1 ) + g ( X &prime; j - 1 , X &prime; j ) &le; F &OverBar; + g 0 2 - - - ( 10 )
其中,
g ( X &prime; j - 1 , X &prime; j ) = g ( x i 1 , x i 2 ) - G &prime; ( X &prime; j - 1 + x i 1 2 ) ( X &prime; j - 1 - x i 1 ) + G &prime; ( X &prime; j + x i 2 2 ) ( X &prime; j - x i 2 ) - - - ( 11 )
式(11)中,g(xi1,xi2)为测试值;
步骤1-5-4)根据具体情况,对参数g0调整后重新进行数据块划分;
第一种情况,当递推法计算到第i步(i<M),x1,x2,…,xN中元素已经取尽,这时计算终止;新的g0设为回到步骤1-5-2),将g'0代入式(9)重新开始迭代计算;
第二种情况,计算进行了M步,但x1,x2,…,xN中的元素还没有取尽,设XM=xk,新的g0设定为回到步骤1-5-2),将g'0代入式(9)重新开始迭代计算;
第三种情况,当计算到第M步,XM取值为x1,x2,…,xN集合的最后一个元素,且小于一定的值(如)时,迭代停止,转步骤1-5-5);
第四种情况,迭代达到设定的次数,说明计算量和通信量无法达到相对均衡,此时迭代停止,转步骤1-5-5);
步骤1-5-5)当迭代停止时,求得一组X'0,X'1,…,X'M,以X'0,X'1,…,X'M作为分割点将数据元素排列x1,x2,…,xN分成M个数据块,由此得到数据划分方案;
步骤1-6)将划分的数据块分配给所有的处理器,启动运行n个时间步,收集的计算时间和通信时间分析负载均衡的效率;如果负载均衡效率低于要求门限,收集最近一个时间步各处理器计算时间TCj,责任通信时间TRj1;对现有划分进行微调后,运行一个时间步,得到各处理器的责任通信时间TRj2;进入步骤1-3)重新进行数据块划分;如果负载均衡效率达到要求门限,则继续运行,进入第二阶段进行动态调整;
所述动态调整阶段,具体包括以下步骤:
步骤2-1)根据设定的时间间隔,定时查看负载均衡效率,收集n个时间步各处理器的计算时间和责任通信时间,n≤20,如果预测未来m个时间步的负载均衡效率平均值高于设定的阈值,则继续运行,等待下个时间间隔再继续检测,否则启动负载动态调整,执行步骤2-2);
步骤2-2)收集最近一个时间步收集的各处理器计算时间TCj,责任通信时间TRj1;在不同划分情况下的通信时间的测试值;求解计算量密度函数f和通信量函数的导数G';采用步骤1-2)相同的数据块划分微调方法对现有划分微调后,运行一个时间步,得到各处理器的责任通信时间TRj2;转入步骤1-3)继续运行,重新进行数据块划分。
CN201410503520.4A 2014-09-26 2014-09-26 一种基于插值算法面向计算通信联合优化的负载均衡方法 Active CN104281494B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410503520.4A CN104281494B (zh) 2014-09-26 2014-09-26 一种基于插值算法面向计算通信联合优化的负载均衡方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410503520.4A CN104281494B (zh) 2014-09-26 2014-09-26 一种基于插值算法面向计算通信联合优化的负载均衡方法

Publications (2)

Publication Number Publication Date
CN104281494A CN104281494A (zh) 2015-01-14
CN104281494B true CN104281494B (zh) 2017-05-10

Family

ID=52256395

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410503520.4A Active CN104281494B (zh) 2014-09-26 2014-09-26 一种基于插值算法面向计算通信联合优化的负载均衡方法

Country Status (1)

Country Link
CN (1) CN104281494B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112148474A (zh) * 2020-08-20 2020-12-29 安徽中科龙安科技股份有限公司 面向负载均衡的龙芯大数据一体机自适应任务分割方法及系统
US20230092253A1 (en) * 2021-09-17 2023-03-23 International Business Machines Corporation Interpolating performance data

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101706741A (zh) * 2009-12-11 2010-05-12 中国人民解放军国防科学技术大学 一种基于负载平衡的cpu和gpu两级动态任务划分方法
CN103514047A (zh) * 2013-10-14 2014-01-15 中国人民解放军理工大学 一种用于移动社交网络的任务负载平衡方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100131959A1 (en) * 2008-11-26 2010-05-27 Spiers Adam Z Proactive application workload management
US8909763B2 (en) * 2011-03-31 2014-12-09 Mitsubishi Heavy Industries, Ltd. Computing-device management device, computing-device management method, and computing-device management program

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101706741A (zh) * 2009-12-11 2010-05-12 中国人民解放军国防科学技术大学 一种基于负载平衡的cpu和gpu两级动态任务划分方法
CN103514047A (zh) * 2013-10-14 2014-01-15 中国人民解放军理工大学 一种用于移动社交网络的任务负载平衡方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
《实现节点负载均衡的无线传感网能量高效分簇方法》;雷磊 等;《应用科学学报》;20101130;551-560 *
《舰载通信设备负载均衡研究》;吴昊 等;《舰船科学技术》;20071130;93-96 *

Also Published As

Publication number Publication date
CN104281494A (zh) 2015-01-14

Similar Documents

Publication Publication Date Title
US8799916B2 (en) Determining an allocation of resources for a job
Dubinski et al. GOTPM: a parallel hybrid particle-mesh treecode
CN101697141B (zh) 网格中基于历史数据建模的作业性能预测方法
US9037880B2 (en) Method and system for automated application layer power management solution for serverside applications
CN104380260B (zh) 利用可伸缩网格计算的储层仿真
CN103607459A (zh) 一种云计算平台IaaS层的动态资源监测及调度方法
US20140201114A1 (en) Device of managing distributed processing and method of managing distributed processing
WO2018219052A1 (zh) 一种基于对偶模态方程的确定性声固耦合响应预示方法
Shoukourian et al. Using machine learning for data center cooling infrastructure efficiency prediction
CN103473120A (zh) 一种基于加速因子的多核实时系统任务划分方法
CN104199870A (zh) 基于混沌搜索的ls-svm预测模型的建立方法
CN102902344A (zh) 基于随机任务的云计算系统能耗优化方法
CN104281494B (zh) 一种基于插值算法面向计算通信联合优化的负载均衡方法
Sanjay et al. Performance modeling of parallel applications for grid scheduling
JPH11259433A (ja) 並列実行システム
Rizvandi et al. On modeling dependency between mapreduce configuration parameters and total execution time
CN113158435B (zh) 基于集成学习的复杂系统仿真运行时间预测方法与设备
CN108139942A (zh) 数据中心端到端功率效率建模的方法
CN103530190A (zh) 一种负载预测方法及装置
Liu et al. Sniper: cloud-edge collaborative inference scheduling with neural network similarity modeling
CN115878332B (zh) 深度学习网络中的内存资源分配方法、装置、设备及介质
CN109711555B (zh) 一种预测深度学习模型单轮迭代时间的方法和系统
Shin et al. Xonar: Profiling-based job orderer for distributed deep learning
CN113672489B (zh) 超级计算机的资源性能等级确定方法及设备
US20220050814A1 (en) Application performance data processing

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant