发明名称 计算机集群资源分配系统和方法
摘要 本发明公开了一种计算机集群资源分配系统,管理中心根据各计算节点的资源容量信息,生成计算机集群的资源容量矩阵;管理中心在各个任务到达时,依据资源调度策略,自动为各任务计算并合理分配各个计算节点上的资源数,为各个任务动态分配各计算节点以及各节点上的资源。本发明还公开了一种计算机集群资源分配方法。本发明能公平、高效的分配计算机集群资源。
申请公布号 CN103812886A 申请公布日期 2014.05.21
申请号 CN201210447371.5 申请日期 2012.11.09
申请人 中国科学院上海高等研究院 发明人 郑小盈;沈开基;宋应文
分类号 H04L29/08(2006.01)I 主分类号 H04L29/08(2006.01)I
代理机构 上海浦一知识产权代理有限公司 31211 代理人 王江富
主权项 1.一种计算机集群资源分配系统,包括一管理中心、N个计算节点,N为正整数;管理中心同各个计算节点网络连接,每个计算节点上有M种资源,M为正整数;各个计算节点,分别向管理中心上报本计算节点的资源容量信息;其特征在于,管理中心根据各计算节点的资源容量信息,生成计算机集群的资源容量矩阵;管理中心在J个任务到达时,依据资源调度策略,为J个任务动态分配计算节点以及节点上的资源,J为正整数;定义资源容量矩阵C,第n个计算节点的第m种资源的容量为C<sub>n,m</sub>,n为小于等于N的正整数,m为小于等于M的正整数;定义作业数目矩阵x,第j个任务在第n个计算节点上分配的作业数目为x<sub>j,n</sub>;定义作业资源需求矩阵R,第j个任务的单个作业对第m种资源的需求为R<sub>j,m</sub>;定义单种资源的最大比例矩阵μ,μ<sub>j,n</sub>为第j个任务单个作业占用第n个计算节点上的单种资源的最大比例,j为小于等于J的正整数;定义资源紧缺程度变量矩阵λ,λ<sub>n,m</sub>为第n个计算节点的第m种资源的资源紧缺程度变量;定义内迭代步长δ(in),δ<sub>j,n</sub>(in)为第j个任务在第n个计算节点上分配作业数目的内迭代步长,δ<sub>j,n</sub>(in)>0;定义外迭代步长δ(out),δ<sub>n,m</sub>(out)为第n个计算节点的第m种资源的外迭代步长,δ<sub>n,m</sub>(out)>0;定义资源分配的公平因子为a,a≥0,公平因子a的取值越大,资源分配越倾向公平;公平因子a的取值越小,资源分配越倾向效率;所述资源调度策略包括以下步骤:一.为公平因子a赋值,计算单种资源的最大比例矩阵μ;启动外迭代,为外迭代步数t赋初始值;为资源紧缺程度变量矩阵λ(t)赋初始值,λ(t)各元素λ<sub>n,m</sub>初始值大于0;为外迭代作业数目矩阵x(t)赋初始值;x(t)各元素初始值大于等于零,并且x(t)各元素为初始值时<maths num="0001"><![CDATA[<math><mrow><munderover><mi>&Sigma;</mi><mrow><mi>j</mi><mo>=</mo><mn>1</mn></mrow><mi>J</mi></munderover><mrow><mo>(</mo><msub><mi>R</mi><mrow><mi>j</mi><mo>,</mo><mi>m</mi></mrow></msub><mo>*</mo><msub><mi>x</mi><mrow><mi>j</mi><mo>,</mo><mi>n</mi></mrow></msub><mo>)</mo></mrow><mo>&le;</mo><msub><mi>C</mi><mrow><mi>n</mi><mo>,</mo><mi>m</mi></mrow></msub><mo>;</mo></mrow></math>]]></maths>二.启动内迭代,为内迭代步数k初始值赋值;(1)内迭代作业数目矩阵x(k)初始值赋值为外迭代作业数目矩阵x(t);(2)为内迭代作业数目矩阵x(k)中的每个数值计算更新如下,<maths num="0002"><![CDATA[<math><mrow><msub><mi>x</mi><mrow><mi>j</mi><mo>,</mo><mi>n</mi></mrow></msub><mrow><mo>(</mo><mi>k</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><mo>=</mo><msub><mi>x</mi><mrow><mi>j</mi><mo>,</mo><mi>n</mi></mrow></msub><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mo>+</mo><msub><mi>&delta;</mi><mrow><mi>j</mi><mo>,</mo><mi>n</mi></mrow></msub><mrow><mo>(</mo><mi>in</mi><mo>)</mo></mrow><msup><mrow><mo>(</mo><msub><mi>&mu;</mi><mrow><mi>j</mi><mo>,</mo><mi>n</mi></mrow></msub><mrow><mo>(</mo><munderover><mi>&Sigma;</mi><mrow><mi>n</mi><mo>=</mo><mn>1</mn></mrow><mi>N</mi></munderover><msub><mi>&mu;</mi><mrow><mi>j</mi><mo>,</mo><mi>n</mi></mrow></msub><msub><mi>x</mi><mrow><mi>j</mi><mo>,</mo><mi>n</mi></mrow></msub><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow></mrow><mo>)</mo></mrow><mrow><mo>-</mo><mi>&alpha;</mi></mrow></msup><mo>-</mo><munderover><mi>&Sigma;</mi><mrow><mi>m</mi><mo>=</mo><mn>1</mn></mrow><mi>M</mi></munderover><msub><mi>&lambda;</mi><mrow><mi>n</mi><mo>,</mo><mi>m</mi></mrow></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mfrac><msub><mi>R</mi><mrow><mi>j</mi><mo>,</mo><mi>m</mi></mrow></msub><msub><mi>C</mi><mrow><mi>n</mi><mo>,</mo><mi>m</mi></mrow></msub></mfrac><mo>)</mo></mrow></math>]]></maths>(3)如果x<sub>j,n</sub>(k+1)<0,x<sub>j,n</sub>(k+1)=0;(4)如果内迭代收敛,则结束内迭代,进行步骤三;否则k=k+1,跳转步骤(2);三.外迭代作业数目矩阵x(t+1)赋值为内迭代作业数目矩阵收敛值x(k+1);四.更新资源紧缺程度变量矩阵λ(t)中的每个数值,<maths num="0003"><![CDATA[<math><mrow><msub><mi>&lambda;</mi><mrow><mi>n</mi><mo>,</mo><mi>m</mi></mrow></msub><mrow><mo>(</mo><mi>t</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><mo>=</mo><msub><mi>&lambda;</mi><mrow><mi>n</mi><mo>,</mo><mi>m</mi></mrow></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>-</mo><msub><mi>&delta;</mi><mrow><mi>n</mi><mo>,</mo><mi>m</mi></mrow></msub><mrow><mo>(</mo><mi>out</mi><mo>)</mo></mrow><mrow><mo>(</mo><mn>1</mn><mo>-</mo><munderover><mi>&Sigma;</mi><mrow><mi>j</mi><mo>=</mo><mn>1</mn></mrow><mi>J</mi></munderover><mfrac><msub><mi>R</mi><mrow><mi>j</mi><mo>,</mo><mi>m</mi></mrow></msub><msub><mi>C</mi><mrow><mi>n</mi><mo>,</mo><mi>m</mi></mrow></msub></mfrac><msub><mi>x</mi><mrow><mi>i</mi><mo>,</mo><mi>n</mi></mrow></msub><mrow><mo>(</mo><mi>t</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><mo>)</mo></mrow><mo>;</mo></mrow></math>]]></maths>五.如果λ<sub>n,m</sub>(t+1)<0,λ<sub>n,m</sub>(t+1)=0;六.如果外迭代收敛,则结束外迭代,进行步骤七,否则t=t+1,跳转步骤二;七.将x(t+1)的各元素x<sub>j,n</sub>(t+1)取整数;八.管理中心向N个计算节点分别发送计算任务的分配信息x<sub>j,n</sub>(t+1),以及任务的资源分配信息x<sub>j,n</sub>(t+1)R<sub>j</sub>,x<sub>j,n</sub>(t+1)为第j个任务在第n个计算节点上分配的作业数目,x<sub>j,n</sub>(t+1)R<sub>j,m</sub>为第j个任务占用的第n个计算节点的第m种资源数。
地址 201210 上海市浦东新区海科路99号