《用于平衡工作负荷分布的协作方法和系统.pdf》由会员分享,可在线阅读,更多相关《用于平衡工作负荷分布的协作方法和系统.pdf(20页完整版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 103677996 A (43)申请公布日 2014.03.26 CN 103677996 A (21)申请号 201310382257.3 (22)申请日 2013.08.28 1215214.6 2012.08.28 GB G06F 9/50(2006.01) (71)申请人 国际商业机器公司 地址 美国纽约阿芒克 (72)发明人 G德拉科尔特 AM斯格罗 A多纳特尔利 (74)专利代理机构 北京市金杜律师事务所 11256 代理人 酆迅 陈颖 (54) 发明名称 用于平衡工作负荷分布的协作方法和系统 (57) 摘要 本发明涉及用于平衡工作负荷分布的协作方 法和系。
2、统。可以提供一种用于多个联网的计算节 点中的平衡的工作负荷分布的方法。可以布置联 网的计算节点为连通图, 该连通图定义每个联网 的计算节点的至少一个直接邻居。该方法可以包 括 : 确定第 i 个计算节点在第 i 个计算节点可以 开始新任务之前的第一阶段的第一工作负荷指 标 ; 确定第 i 个计算节点在假设新任务在第 i 个 计算节点上在第二阶段执行时的估计工作负荷指 标 ; 确定每个直接邻居在假设新任务在第二阶段 执行时的估计工作负荷指标 ; 判决是否向另一计 算节点移动新任务 ; 并且向第 i 个计算节点的直 接邻近计算节点中的一个直接邻近计算节点移动 新任务, 从而在多个联网的计算节点内平。
3、衡工作 负荷。 (30)优先权数据 (51)Int.Cl. 权利要求书 3 页 说明书 10 页 附图 6 页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书3页 说明书10页 附图6页 (10)申请公布号 CN 103677996 A CN 103677996 A 1/3 页 2 1. 一种用于多个联网 (200)的计算节点中的工作负荷分布的方法 (100) , 所述联网 (200) 的计算节点被布置为连通图, 所述连通图定义每个联网的计算节点的至少一个直接 邻近计算节点, 所述方法包括 : - 确定 (102) 所述多个联网的计算节点之中的第 i 个计算节点 (20。
4、2) 在所述第 i 个计 算节点开始新任务之前的第一阶段 k 的第一工作负荷指标 xi(k), - 确定 (104) 所述第 i 个计算节点 (202) 在假设所述新任务 (402) 在所述第 i 个计算 节点 (202) 上在第二阶段 k+1 执行时的估计工作负荷指标 yi(k+1), - 确定 (106) 所述第 i 个计算节点 (202) 的每 n 个直接邻近计算节点 (204, 206, 208, 210) 在假设所述新任务 (402) 在所述第二阶段 k+1 执行时的估计工作负荷指标 yj(k+1), j n, - 基于判决协议来判决 (108) 是否向所述第 i 个计算节点 (20。
5、2) 的所述 n 个直接邻近 计算节点 (204, 206, 208, 210) 中的一个直接邻近计算节点移动所述新任务 (402) , 所述判 决协议包括 : - 所述第 i 个计算节点在阶段 k 的所述第一工作负荷指标 xi(k), - 所述第 i 个计算节点在阶段 k+1 的所述估计工作负荷指标 yi(k+1), - 所述第 i 个计算节点 (202) 的所述直接邻近计算节点 (204, 206, 208, 210) 中的每个 直接邻近计算节点在阶段 k 的所述第一工作负荷指标 xj(k), 以及 - 所述第 i 个计算节点 (202) 的所述直接邻近计算节点 j(204, 206, 2。
6、08, 210) 中的每 个直接邻近计算节点在阶段 k+1 的所述估计工作负荷指标 yi(k+1), - 如果判决为移动所述新任务 (402) , 则向所述第 i 个计算节点 (202) 的所述直接邻近 计算节点 (204, 206, 208, 210) 中的一个直接邻近计算节点移动 (110) 所述新任务 (402) , 从而在所述多个联网的计算节点内平衡工作负荷。 2. 根据权利要求 1 所述的方法 (100) , 其中所述判决协议由下式定义 : 对于所有 j n, max(maxyj(k+1)-xj(k);yi(k+1)-xi(k), 其中 : yj(k+1) 是所述第 i 个计算节点 。
7、(202) 的所述直接邻近计算节点 (204, 206, 208, 210) 中 的一个直接邻近计算节点在阶段 “k+1” 的所述估计工作负荷指标, xj(k) 是所述第 i 个计算节点 (202) 的所述直接邻近计算节点 (204, 206, 208, 210) 中 的一个直接邻近计算节点在阶段 “k” 的所述工作负荷指标, yi(k+1) 是所述第 i 个计算节点 (202) 在阶段 “k+1” 的所述估计工作负荷指标, xi(k) 是所述第 i 个计算节点 (202) 在阶段 k 的所述工作负荷指标, 并且 “n” 是所述第 i 个计算节点 (202) 的直接邻近计算节点 (204, 2。
8、06, 208, 210) 的数目。 3. 根据权利要求 1 或者 2 所述的方法 (100) , 其中每个工作负荷指标基于包括 CPU 使 用率、 存储器使用率、 计算节点响应时间、 网络流量和盘 I/O 流量或者其组合的组之中的至 少一项。 4. 根据任一前述权利要求所述的方法 (100) , 其中针对所述新任务 (402) , 每个估计工 作负荷指标基于与包括待由所述新任务分析的多个项、 待向有关数据应用的所述新任务的 逻辑复杂性、 用于有关计算节点的硬件类型、 所述计算节点的操作系统以及另外涉及到的 硬件和 / 或软件部件的组之中的一项组合的相应工作负荷指标。 权 利 要 求 书 CN。
9、 103677996 A 2 2/3 页 3 5. 根据任一前述权利要求所述的方法 (100) , 其中所述第 i 个计算节点 (202) 在阶段 k+1 的所述估计工作负荷指标 yi(k+1) 由下式确定 : 其中 : “n” 是所述第 i 个计算节点 (202) 的直接邻近计算节点 (204, 206, 208, 210) 的数目, xi(k) 是所述第 i 个计算节点 (202) 在阶段 k 的所述第一工作负荷指标, xj(k) 是所述 n 个直接邻近计算节点 (204, 206, 208, 210) 中的一个直接邻近计算节点 在阶段 k 的所述第一工作负荷指标。 6.根据任一前述权利要。
10、求所述的方法 (100) , 其中所述第i个计算节点 (202) 的所述直 接近邻计算节点 (204, 206, 208, 210) 中的一个直接邻近计算节点在阶段 k+1 的所述估计工 作负荷指标 yj(k+1) 由下式确定 : 其中 : “m” 是所述第 i 个计算节点 (202) 的所述直接邻近计算节点中的所述一个直接邻近计 算节点 (210) 的直接邻近计算节点 (202, 212, 214, 216) 的数目, xj(k) 是所述第 j 个计算节点 (210) 在阶段 “k” 的所述第一工作负荷指标, 所述第 j 个 计算节点 (210) 是所述第 i 个计算节点 (202) 的直接。
11、邻近计算节点, xc(k) 是所述第 i 个计算节点 (202) 的所述直接邻近计算节点 (204, 206, 208, 210) 中 的一个直接邻近计算节点的 m 个直接邻近计算节点 (202, 212, 214, 216) 中的一个直接邻近 计算节点在阶段 “k” 的所述第一工作负荷指标。 7. 一种将被耦合到多个联网 (200) 的计算节点的计算节点 (700) , 所述联网 (200) 的计 算节点被布置为连通图, 所述连通图定义每个联网的计算节点的至少一个直接邻近计算节 点, 所述计算节点 (700) 包括 : - 第一确定单元 (702) , 适于确定其作为所述多个联网的计算节点之。
12、中的第 i 个计算节 点 (202, 700) 在所述第 i 个计算节点 (202, 700) 开始新任务 (402) 之前的第一阶段 k 的第 一工作负荷指标 xi(k), - 第二确定单元 (704) , 适于确定其作为所述第 i 个计算节点 (202) 在假设所述新任务 (402) 在所述计算节点 (202, 700) 上在第二阶段 k+1 执行时的估计工作负荷指标 yi(k+1), - 第三确定单元 (706) , 适于确定所述计算节点 (202, 700) 的 n 个直接邻近计算节点 (204, 206, 208, 210) 中的每个直接邻近计算节点在假设所述新任务 (402) 在所。
13、述第二阶段 k+1 执行时的估计工作负荷指标 yj(k+1), j n, - 判决单元 (708) , 适于基于判决协议来判决是否向所述计算节点 (202, 700) 的所述 n 个直接邻近计算节点中的一个直接邻近计算节点移动所述新任务 (402) , 所述判决协议包 括 : - 所述计算节点 (202, 700) 在阶段 k 的所述第一工作负荷指标 xi(k), - 所述计算节点 (204, 206, 208, 210) 在阶段 k+1 的所述估计工作负荷指标 yi(k+1), - 所述计算节点 (202, 700) 的所述直接邻近计算节点 (204, 206, 208, 210) 中的每个。
14、直 接邻近计算节点在阶段 k 的所述第一工作负荷指标 xj(k), 以及 - 所述计算节点 (202, 700) 的每个直接邻近计算节点 j(204, 206, 208, 210) 在阶段 k+1 权 利 要 求 书 CN 103677996 A 3 3/3 页 4 的所述估计工作负荷指标 yi(k+1), - 移动单元 (710) , 适于在判决为移动所述新任务 (402)的情况下向所述计算节点 (202) 的所述直接邻近计算节点 (204, 206, 208, 210) 中的一个直接邻近计算节点移动所述 新任务 (402) , 从而在所述多个联网 (200) 的计算节点内平衡工作负荷。 8。
15、. 一种系统, 包括根据权利要求 7 所述的多个联网的计算节点 (202, 204, 206, 208, 210, 212, 214, 216) 。 权 利 要 求 书 CN 103677996 A 4 1/10 页 5 用于平衡工作负荷分布的协作方法和系统 技术领域 0001 本发明总体涉及一种平衡的工作负荷分布。本发明还涉及一种计算节点、 计算系 统、 数据处理程序和计算机程序产品。 背景技术 0002 现代计算中心通常与计算机、 计算机节点或者计算系统的网络操作。在许多情况 下, 借助于虚拟化层将硬件系统抽象化成操作系统。云计算中心的这一典型设置即使 无虚拟化满足计算中心的用户或者客户对。
16、在不同系统之中分布工作负荷的要求, 以便 由于个体系统的更佳利用而具有更高总吞吐量。对于计算中心管理, 它意味着组织工作负 荷在计算系统之中的有意义分布以便实现工作负荷在不同计算系统之中的平衡。 这可以最 佳利用可用资源。 0003 存在与平衡的工作负荷有关的若干公开文献。例如文献 US8,122,132B2 公开一种 用于操作具有多个节点 (每个节点包括多个处理器) 的高性能计算集群 (HPC) 的技术, 其中 该技术包括周期性地将与在多个节点中的每个节点的处理器利用率和网络利用率有关的 信息从多个节点中的每个其它节点向多个节点中的其余节点广播。基于广播的信息更新 在多个节点中的每个节点中维。
17、护的相应本地作业表。然后 (基于各本地作业表中的广播信 息) 从多个处理器中的一个或者多个处理器向多个处理器中的不同处理器移动一个或者多 个线程。 0004 在另一文献 US201122706A1 中, 公开一种方法, 该方法提供网络拓扑的自动和优 化选择用于分布在修改的网络拓扑的计算机上的作业调度。 网络拓扑的自动和优化选择从 当前拓扑和所需数目的附加连接开始。以这一方式, 本发明的方法与例如简单环网络比较 为修改的一致性算法提供更高收敛速度。该方法利用所谓小世界网络。 0005 然而, 用于实现工作负荷分布的当前方式基于使用集中方式在服务器之间拆分工 作负荷。这可以在资源利用率的可扩展性、。
18、 可适配性和优化方面具有一些限制。此外, 当在 网络本身内的计算节点随机生成工作负荷时适配资源利用率可能很复杂。 0006 因此, 可能需要克服用于计算节点网络中的工作负荷分布的集中方式的上述限制 并且提供一种更动态、 可适配的平衡的工作负荷分布。 发明内容 0007 这一需求可以由根据独立权利要求的一种用于平衡的工作负荷分布的方法、 计算 节点、 计算系统、 数据处理程序和计算机程序产品解决。 0008 根据一个实施例, 可以提供一种用于平衡的工作负荷分布的方法。该方法可以可 操作用于分发多个联网的计算节点中的工作负荷。可以布置联网的计算节点布置为连通 图, 该连通图定义每个联网的计算节点的。
19、至少一个直接邻居。该方法可以包括 : 确定多个 联网的计算节点之中的第i个计算节点在第i个计算节点可以开始新任务之前的第一阶段 k 的第一工作负荷指标 xi(k), 确定第 i 个计算节点在假设将在第 i 个计算节点上在第二阶 说 明 书 CN 103677996 A 5 2/10 页 6 段 k+1 执行新任务时的估计工作负荷指标 yi(k+1), 并且确定第 i 个计算节点的每 n 个直接 邻居在假设将在第二阶段 k+1 执行新任务时的估计工作负荷指标 yj(k+1), j n。基于这 些确定, 该方法也可以包括基于判决协议判决是否向第 i 个计算节点的 n 个直接邻近计算 节点中的一个直。
20、接邻近计算节点移动新任务。这一判决协议可以包括第 i 个计算节点在阶 段 k 的第一工作负荷指标 xi(k)、 第 i 个计算节点在阶段 k+1 的估计工作负荷指标 yi(k+1)、 第i个计算节点的直接邻近计算节点中的每个直接邻近计算节点在阶段k的第一工作负荷 指标 xj(k) 以及第 i 个计算节点的直接邻近计算节点 j 中的每个直接邻近计算节点在阶段 k+1 的估计工作负荷指标 yi(k+1), 然后如果判决为移动新任务则向第 i 个计算节点的直接 邻近计算节点中的一个直接邻近计算节点移动新任务, 从而在多个联网的计算节点内平衡 工作负荷。 0009 根据另一实施例, 可以提供一种计算节。
21、点。该计算节点可以可连接到多个联网的 计算节点。可以布置联网的计算节点为连通图, 该连通图定义每个联网的计算节点的至少 一个直接邻居。该计算节点可以包括 : 第一确定单元, 适于确定它的作为多个联网的计算 节点之中的计算节点在计算节点开始新任务之前的第一阶段k的第一工作负荷指标xi(k), 以及第二确定单元, 适于确定它的作为计算节点在假设新任务在计算节点上在第二阶段 k+1 执行时的估计工作负荷指标 yi(k+1), 以及第三确定单元, 适于确定第 i 个计算节点的 n 个直接邻居中的每个直接邻居在假设新任务在第二阶段 k+1 执行时的估计工作负荷指标 yj(k+1), j n。此外, 可以。
22、提供可以适于基于判决协议来判决是否向计算节点的 n 个直 接邻近计算节点中的一个直接邻近计算节点移动新任务的判决单元。判决协议可以包括 计算节点在阶段 k 的第一工作负荷指标 xi(k)、 计算节点在阶段 k+1 的估计工作负荷指标 yi(k+1)、 计算节点的直接邻近计算节点中的每个直接邻近计算节点在阶段 k 的第一工作负 荷指标 xj(k) 以及第 i 个计算节点的每个直接邻近计算节点 j 在阶段 k+1 的估计工作负荷 指标 yi(k+1)。计算节点也可以包括 : 移动单元, 适于在判决为移动新任务的情况下向第 i 个计算节点的直接邻近计算节点中的一个直接邻近计算节点移动新任务, 从而在。
23、多个联网 的计算节点内平衡工作负荷。 0010 根据又一实施例, 可以提供一种可以包括多个联网的如以上说明的计算节点的联 网系统。 0011 可以注意, 可以在连通图中、 具体在构建连通图的拓扑中布置计算节点, 从而可以 使用从节点到节点的网络连接从任何计算节点开始到达每个节点。 也可以值得提到的是工 作负荷指标可以具体为具有离散值的标量参数或者具有有关参数值的标量参数 的矢量, 这些标量参数比如是 CPU 使用率、 存储器使用率、 网络使用率或者可以针对也见上 文的计算节点的利用率和有关工作负荷而描述和表征的其它参数。 0012 详细描述 0013 在本申请的上下文中, 可以使用以下约定、 。
24、术语和 / 或表达 : 0014 术语 “连通图” 可以表示计算节点的拓扑, 从而每个节点可以从任何计算节点开始 可达。可以不只有到达节点的一个路径, 而是有多个路径。但是可以存在至少一个路径, 从 而可以不存在隔离的子系统。 0015 术语 “工作负荷指标” 可以表示表征计算节点的一个或者多个参数。可以将其表 达为标量值, 或者备选地, 它可以是不同参数如 CPU 使用率、 存储器使用率、 网络使用率、 I/ 说 明 书 CN 103677996 A 6 3/10 页 7 O 速率、 管理的进程数目、 并行处理的线程数目的矢量。所有这些参数可以依赖于时间并且 可以针对不同的可预定义时间间隔来。
25、测量或者确定这些参数。这一设置可以可由用户定 义。 备选地, 计算节点可以基于工作负荷模式自动确定相关参数, 这些工作负荷模式可以依 赖于一天内的时间、 一周内的日期、 其它时间间隔或者用户在线、 处理工作负荷、 预定义工 作负荷参数可以针对这些工作负荷参数预定义某些合约条件等。 0016 术语 “工作负荷分布” 可以表示用于有关网络中的计算节点上的工作负荷平衡的 措施。在相等工作负荷的情况下, 所有计算节点或者仅预定义子组可以在给定的 时间点具有相似工作负荷。它可以描述其中所有计算节点的工作负荷可以接近相等的情 形。 0017 “联网的计算节点” 可以表示可以使用已知网络技术和协议来连接的计。
26、算机系统。 计算节点可以各自是具有它自己的外壳或者底盘的个体计算机。备选地, 一对或者所有计 算节点可以处于共同外壳中、 比如在刀片系统中, 或者它们可以布置于共同机架中。它们 可以是高性能系统的一部分或者如在多处理器中通常使用的具有 CPU 和存储器的单核系 统或者也可以是多核系统。 0018 术语 “直接邻居” 或者 “直接邻近计算节点” 可以表示计算节点在连通图的定义中 的下一邻居。它可以意味着可以达到一个计算节点而无需通过连通图的另一成员。这些计 算节点可以在它们之间具有直接网络或者其它直接链路例如无线链路。 0019 “第一工作负荷指标” 可以表示有关计算节点的工作负荷指标。它可以描。
27、述计算节 点的资源利用率。 在计算节点中可用的每个资源及其有关利用率可以用作第一工作负荷指 标。以下给出示例。 0020 术语 “CPU 使用率” 可以表示工作负荷指标的示例。可以按照其中 CPU 可以在空闲 模式中的百分比、 处理器计算的线程数目、 每时间间隔的任务切换数目、 在处理器的不同单 元或者子处理器、 例如浮点单元与定点单元之间的拆分等来度量它。 0021 术语 “存储器使用率” 可以表示与计算节点的存储器的利用率有关的参数。 它可以 是工作负荷指标的另一示例。它可以涉及主存储器、 内部存储器或者高速缓冲存储器或者 外部存储器或者其任何组合。 可以在时间段上、 即在时间间隔内度量利。
28、用率。 它可以是可用 存储器的百分比, 或者存储器可以不以任何方式被操作系统使用、 即自由可访问的存储器。 0022 术语 “计算节点响应时间” 也可以是第一工作负荷指标的或者简称为工作负荷指 标的示例。响应时间可以是在已经开始任务之后在递送结果之前的时间。作为任务, 可以 参考标准任务以便具有可比较结果。响应时间也可以是用于如下组合响应的指示, 该组合 响应包括 I/O 时间、 计算时间和网络延迟。 0023 用于计算节点的 “新任务” 可以表示新工作负荷、 新过程或者新线程等。新任务 的计算可以尚未开始以便将它称为新任务。在可以开始新任务之前, 必须做出两个判决、 例如是否在当前计算系统中。
29、或者在另一计算系统中开始新任务。在本上下文中,“移动新 任务” 可以表示向邻近节点传递任务例如使用网络向另一计算节点在物理上传递新任 务以便在邻近计算节点中继续任务或者另外操纵它。 0024 “估计工作负荷指标” 可以表示工作负荷指标在假设在计算节点执行新任务时的 值。然而有关值可以不仅反映即, 基于以下而被确定实际或者当前计算节点的工 作负荷和有关参数而且反映直接邻近计算节点的工作负荷指标。 这与第一工作负荷指标形 说 明 书 CN 103677996 A 7 4/10 页 8 成对比, 该第一工作负荷指标是用于计算节点的实际工作负荷的度量。 为此, 可以不考虑邻 近工作负荷。 0025 可。
30、以理解, 术语 “工作负荷指标” 可以是与上述示例之一有关的参数或者是可以描 述计算节点的利用率的参数。也可以理解, 可以组合或者使用个体参数的任何组合作为包 括多个参数的矢量。 0026 提出的用于平衡的工作负荷分布的方法可以提供两个优点 : 0027 基于新方法, 计算节点的连接的组的工作负荷的平衡可以基于一致性算法 (consensus algorithm) , 该一致性算法可以允许使用协作方法来平衡计算节点网络上的 工作负荷。 该方法可以允许完全利用网络内的机器或者计算资源而未将任何集中式部件用 于作业或者工作负荷指派、 作业负荷估计和作业贮存库。在最先进的解决方案中大量使用 集中方式。
31、。 0028 以这里公开的这一新方式, 在计算节点中使用本发明的修改的一致性算法, 可以 改进、 即更加平衡计算资源网络内的工作负荷平衡和资源利用率。这可以节省以附加计算 节点、 功率、 编程要求、 系统管理开销、 用于达到平衡状态的时间等这样的形式的资源。 0029 这一解决方案可以基于逻辑拓扑, 该逻辑拓扑基于计算节点的邻近概念。它也涉 及到每个节点直接评估的在使用的资源方面的至少一个工作负荷指标 (例如 CPU 使用率、 存储器使用率、 响应时间、 网络使用率等) 也可以反映与每个精化阶段 (elaboration) 或者 新任务关联的 “估计工作负荷指标” 。它可以例如基于待由新任务分。
32、析的多个项或者数据、 将向这一数据应用的逻辑复杂性以及可用硬件和操作系统类型。另外, 修改的平均一致性 算法是解决方案的一部分, 以及重新分配 / 判决范式或者判决协议, 该范式或者协议允许 每个节点选择是否可以在计算节点本地执行计算或者是否可以将它向它的直接邻居中的 一个直接邻居传递。因此, 可以将优点概括为提供一种能够以快速方式优化资源利用率并 且避免整个系统发散 (diverge)这可以由一致性算法确保的方法和系统。 0030 根据该方法的一个实施例, 判决协议可以由下式定义 : 0031 对于所有 j n, max(maxyj(k+1)-xj(k);yi(k+1)-xi(k), 003。
33、2 其中 : 0033 yj(k+1) 可以是与第 i 个计算节点的直接邻近计算节点中的一个直接邻近计算节 点在阶段 k+1该阶段可以是其中可以处理新任务的阶段的估计工作负荷指标, 0034 xj(k) 可以是与第 i 个计算节点的直接邻近计算节点中的一个直接邻近计算节点 在阶段 k意味着在新任务未被处理的工作负荷指标, 0035 yi(k+1) 可以是第 i 个计算节点在阶段 k+1 的估计工作负荷指标, 0036 xi(k) 是第 i 个计算节点在阶段 k 的工作负荷指标, 并且 0037 “n” 是第 i 个计算节点的直接邻近计算节点数目。 0038 上述判决协议可以定义可以向如下节点移。
34、动的新任务, 该节点具有它的估计工作 负荷指标的最大增加。 0039 根据该方法的一个实施例, 每个工作负荷指标可以基于在包括 CPU 使用率、 存储 器使用率、 计算节点响应时间、 网络流量和盘 I/O 流量或者其组合的组之中的至少一项。因 此, 它可以是组合参数中的多于一个参数的标量值或者矢量。公式 说 明 书 CN 103677996 A 8 5/10 页 9 0040 0041 可以定义这样的多个资源, 其中 “x” 可以是工作负荷指标的矢量,“R” 可以是资源 数目,“a” 可以是缩放因子, 并且 “m” 可以是用于每个资源的度量, 该度量指示该资源 “I” 的 工作负荷。备选写入将。
35、是 : 0042 0043 其中可以是工作负荷指标的矢量,“” 可以是缩放因子 “ai” 的矩阵, 并且可 以是矩阵的矢量 0044 这样, 可以建立灵活基础从而反应在云计算中心的不同工作负荷情形、 例如批作 业繁重、 交互繁重、 基础设施繁重、 数据库繁重、 工作负荷的平衡的混合等。 0045 根据该方法的再一个实施例, 针对新任务, 每个估计工作负荷指标可以基于与在 包括待由新任务分析的多个项、 待向有关数据应用的新任务的逻辑复杂性、 用于计算节点 的硬件类型、 计算节点的操作系统以及另外涉及到的硬件和 / 或软件部件的组之中的一项 组合的相应工作负荷指标。项可以是用于待涉及到的数据点的度。
36、量。它也可以是用于涉及 到的数据库中的表、 数据库中的行或者列、 不同数据类型的数目等的计数器。 0046 待分析的项可以是新任务可以解决的任何项、 例如数据、 数据结构、 数据块表、 数 据库行、 数据库列、 线程数目、 线程复杂性、 图像、 文件系统中的文件、 在数据之间的依赖性 等。 0047 根据本发明的一个增强的实施例, 第 i 个计算节点在阶段 k+1 的估计工作负荷指 标 yi(k+1) 可以由下式确定 : 0048 其中 : 0049 “n” 可以是第 i 个计算节点的直接邻近计算节点的数目, 0050 xi(k) 可以是第 i 个计算节点在阶段 “k” 的第一工作负荷指标, 。
37、0051 xj(k) 可以是 “n” 个直接邻近计算节点中的一个直接邻近计算节点在阶段 “k” 的 第一工作负荷指标。 0052 这使得清楚的是并未使用集中方式并且第 i 个计算节点的估计工作负荷指标也 反映直接邻近计算节点的工作负荷。这使得本发明概念和修改的一致性算法相当清楚。 0053 根据本发明的另一增强的实施例, 第 i 个计算节点的直接近邻计算节点中的一个 直接邻近计算节点在阶段 k+1 的估计工作量指标 yj(k+1) 由下式确定 : 0054 其中 : 0055 “m” 可以是第 i 个计算节点的直接邻近计算节点中的该一个直接邻近计算节点的 直接邻近计算节点的数目, 0056 x。
38、j(k) 可以是第 j 个计算节点在阶段 “k” 的第一工作负荷指标, 该第 j 个计算节点 可以是第 i 个计算节点的直接邻居, 0057 xc(k) 可以是第 i 个计算节点的直接邻近计算节点中的一个直接邻近计算节点的 “m” 个直接邻近计算节点中的一个直接邻近计算节点在阶段 “k” 的第一工作负荷指标。 说 明 书 CN 103677996 A 9 6/10 页 10 0058 因此, 第 i 个计算节点的直接邻居的估计工作负荷指标也用可以针对第 i 个计算 节点执行确定的相同方式确定它们的估计工作负荷指标。因此, 该概念可以跨越计算节点 网络一致。这可以帮助减少确定例程并且可以在合理水。
39、平保持系统管理。 0059 另外, 实施例可以采用从计算机可用或者计算机可读介质可访问的计算机程序产 品的形式, 该计算机可用或者计算机可读介质提供用于由计算机或者任何指令执行系统使 用或者与计算机或者任何指令执行系统结合使用的程序代码。出于本说明书的目的, 计算 机可用或者计算机可读介质可以是任何可以包含如下单元的装置, 该装置用于存储、 传达、 传播或者传送用于由指令执行系统、 装置或者设备使用或者与指令执行系统、 装置或者设 备结合使用的程序。 0060 介质可以是用于传播介质的电子、 磁、 光学、 电磁、 红外或者半导体系统。计算 机可读介质的示例可以包括半导体或者固态存储器、 磁带、。
40、 可拆卸计算机盘、 随机存取存 储器 (RAM) 、 只读存储器 (ROM) 、 硬磁盘和光盘。光盘的当前示例包括紧致盘只读存储器 (CD-ROM) 、 紧致盘 - 读 / 写 (CD-R/W) 、 DVD 和蓝光盘。 0061 也应当注意, 已经参照不同主题内容描述本发明的实施例。 具体而言, 已经参照方 法类型权利要求描述一些实施例, 而已经参照装置类型权利要求描述其它实施例。然而本 领域技术人员将从以上和以下描述中推断, 除非另有明示, 否则除了属于一类主题内容的 特征的任何组合之外, 在涉及不同主题内容的特征之间、 具体在方法型权利要求的特征与 装置型权利要求的特征之间的任何组合也视为。
41、在本文内被公开。 0062 从下文将描述的实施例的示例清楚并且参照实施例的示例说明本发明的以上定 义的方面和更多方面, 但是本发明不限于这些示例。 附图说明 0063 现在将仅通过示例并且参照以下附图描述本发明的优选实施例 : 0064 图 1 示出用于工作负荷分布的本发明方法的实施例的框图。 0065 图 2 示出连通图中的计算节点网络的实施例的框图。 0066 图 3 示出具有工作负荷指标值示例以及估计工作负荷指标值示例的计算节点网 络的实施例的框图。 0067 图 4 示出其中可以必须执行新任务的计算节点网络的实施例。 0068 图 5 示出计算节点网络的实施例, 其中新任务在向新计算节。
42、点中转途中。 0069 图 6 示出计算节点网络的实施例, 其中已经随新工作负荷指标移动新任务。 0070 图 7 示出计算节点的实施例, 该计算节点具有允许执行本发明方法的单元。 0071 图 8 另外示出计算节点的实施例, 该计算节点具有计算系统的典型单元。 具体实施方式 0072 在下文中将给出附图的具体描述。图中的所有指示为示意的。首先给出用于平衡 的工作负荷分布的本发明方法的实施例的框图。 随后将描述适于执行该方法的计算节点的 更多实施例。 0073 图1示出用于多个联网的计算节点中的工作负荷分布的方法100的一个实施例的 框图。 布置联网的计算节点为连通图, 从而每个节点可以从任何。
43、计算节点开始到达, 并且定 说 明 书 CN 103677996 A 10 7/10 页 11 义网络中的与每个计算节点的至少一个直接邻居。该方法可以包括确定 102 多个联网的计 算节点之中的第 i 个计算节点在第 i 个计算节点可以开始新任务之前的第一阶段 k意 味着第一时间间隔的第一工作负荷指标 xi(k)该第一工作负荷指标可以是如 上文说明的标量参数或者矢量。另外, 该方法可以包括确定 104 第 i 个计算节点在假设可 以在第 i 个节点上在第二阶段 k+1意味着在比第一时间间隔更晚的时间点执行新 任务时的估计工作负荷指标 yi(k+1)。此外, 该方法可以包括确定 106 第 i 。
44、个计算节点的每 n 个直接邻居在假设可以在第二阶段 k+1 执行新任务时的估计工作负荷指标 yj(k+1), 并且 判决 108 是否向第 i 个计算节点的 n 个直接邻近计算节点中的一个直接邻近计算节点移动 新任务。这一判决可以基于判决协议, 该判决协议包括第 i 个计算节点在阶段 k 的第一工 作负荷指标 xi(k)、 第 i 个计算节点在阶段 k+1 的估计工作负荷指标 yi(k+1)、 第 i 个计算节 点的直接邻近计算节点中的每个直接邻近计算节点在阶段 k 的第一工作负荷指标 xj(k) 和 第 i 个计算节点的直接邻近计算节点 j 中的每个直接邻近计算节点在阶段 k+1 的估计工作。
45、 负荷指标 yi(k+1)。另外, 该方法可以包括如果判决为移动新任务则向第 i 个计算节点的直 接邻近计算节点中的一个直接邻近计算节点移动 110 新任务, 从而在多个联网的计算节点 内平衡工作负荷。由此可以实现上述优点。 0074 图 2 示出连通图的示例性拓扑中的计算节点 202、 204、 206、 208、 210、 212、 214、 216 的网络 200 的一个实施例的框图。可以值得注意的是第 i 个计算节点 202 和第 j 个计算节 点 210。第 i 个计算节点 202 可以在所示示例性网络拓扑中具有四个直接邻近计 算节点 204、 206、 208 和 210。类似地,。
46、 计算节点 210 具有直接邻近计算节点 202、 212、 214、 216。相同逻辑可以应用于任何其它计算节点。计算节点也可以具有如示例性虚线所示多 个连接。 连通图的概念也可以在图2中可识别 : 可以从任何节点开始到达网络的每个节点。 与其余 (计算) 节点无连接的子网络并不存在。 0075 图 3 示出图 3 的计算节点网络的实施例的框图, 该网络具有工作负荷指标值示例 以及估计工作负荷指标值示例。这两个值可以由竖线分离。在计算节点的每个框中的在标 号以下的左侧值可以表示第一工作负荷指标, 而右侧数可以表示具体计算节点的估计工作 负荷指标。例如计算节点 202 可以在假设可以执行新任务。
47、的之后时间阶段具有第一工作负 荷指标 “45” 和估计工作负荷指标 “27” 。这一逻辑可以应用在必要修改时于图 3、 4、 5 和 6 中的所有计算节点符号。 0076 图 4 示出如以上描述的计算节点网络 200 的实施例。这里, 新任务 402 可以必须 由第 i 个计算节点 202 执行。第一工作负荷指标和估计工作负荷指标可以示出尚未改变。 0077 图 5 示出计算节点网络 200 的一个实施例, 其中新任务 402 如在箭头 502 指示的 那样, 在向新计算节点中转途中。 根据上述修改的一致性算法和判决协议, 它可以已经判决 向另一计算节点、 例如第 j 个计算节点 210 移动。
48、新任务 402。工作负荷指标可以仍然未变、 尤其是第 i 个计算节点 210 的第一工作负荷指标 504。这一参数 502 可以具有值例如 10。 0078 图 6 示出相同计算节点网络 200 的一个实施例, 其中可以已经向新计算节点 210 移动新任务 402。这里示出具有值 “25” 的新第一工作负荷指标 602。在可以开始新任务、 即可以开始对新任务的处理之前, 将使检查与初始阶段相同。这意味着计算节点 210 可以 在过程的开始在与计算节点 202 相同的情形中。因而, 计算节点 210 可以经历如下过程, 该 过程检查直接邻近计算节点是否可以更好地适于执行新任务。 这可以也包括确定。
49、计算节点 说 明 书 CN 103677996 A 11 8/10 页 12 212、 214 和 216 的第一工作负荷指标和估计工作负荷指标并且如以上提到的那样相应地应 用判决协议。基本上, 可以针对新计算节点 210 再次执行如以上描述的方法。这样可以用 很高效方式达到计算节点网络 200 中的平衡的工作负荷分布。 0079 图7示出计算节点700的实施例, 该计算节点具有允许执行本发明方法的单元。 具 体而言, 示出适于确定第i个节点的第一工作负荷指标的第一确定单元702。 也可识别适于 确定在假设可以在第 i 个节点处理新任务时的估计工作负荷指标的第二确定单元 704。这 同样适用于第三确定单元 706, 该第三确定单元可以适于为第 i 个计算节点的直接邻近计 算节点确定估计工作负荷。