[发明专利]一种冗余计算机系统任务补偿调度方法有效
申请号: | 201710038009.5 | 申请日: | 2017-01-18 |
公开(公告)号: | CN106775992B | 公开(公告)日: | 2020-03-27 |
发明(设计)人: | 黄晋;李增坤;赵曦滨;刘炎;顾明;孙家广 | 申请(专利权)人: | 清华大学 |
主分类号: | G06F9/48 | 分类号: | G06F9/48;G06F9/50 |
代理公司: | 北京律谱知识产权代理事务所(普通合伙) 11457 | 代理人: | 罗建书 |
地址: | 10008*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明提供了一种冗余计算机系统任务补偿方法,其中任务根据任务之间资源和时序关系划分为不同的任务类型,系统冗余结构是完全镜像的,具有相同的程序逻辑和数据块,维护系统调度标志,在系统运行过程中,周期性的采集系统任务的已执行数量、已分配的数量,计算系统的负载;根据系统负载调度标志与系统超载阈值判定系统的执行方式;系统按照设计的冗余结构进行表决运行;对系统总任务集进行分配并计算任务集调度补偿代价。该方案充分利用冗余系统的硬件优势。在系统正常运行时,系统利用冗余结构,实现备份恢复、表决等功能,体现出容错计算的特征;在高负载的特殊情况下,经过系统的判定,实现负载分配。 | ||
搜索关键词: | 一种 冗余 计算机系统 任务 补偿 调度 方法 | ||
【主权项】:
一种冗余计算机系统任务补偿方法,其中任务根据任务之间资源和时序关系划分为不同的任务类型,系统冗余结构是完全镜像的,具有相同的程序逻辑和数据块,维护系统调度标志,标志为0代表表决调度,标志为1代表补偿调度,默认状态下系统调度标志为0,具体包括下列步骤:(1)系统运行过程中,周期性的采集系统任务的已执行数量、已分配的数量,计算系统的负载;(2)定义系统负载调度标志,以标识系统负载对系统调度的影响,系统负载调度标志默认值为系统调度标志值,为0表示系统负载倾向于表决调度,为1表示系统负载倾向于补偿调度;根据系统负载调度标志与系统超载阈值判定系统的执行方式,如果系统负载调度标识为0,当系统的负载大于系统的超载阈值上限,系统负载调度标志修改为1;如果系统负载调度标志为1,当系统的负载小于系统的超载阈值下限,系统负载调度标志修改为0,同时由于系统任何时候都允许由补偿调度切换回原来的表决调度,所以系统的调度标志此时改为0,系统真正切换回表决调度;系统负载调度标志为0,执行(3),否则执行(4);(3)系统按照设计的冗余结构进行表决运行;(4)对系统总任务集进行分配并计算任务集调度补偿代价,假设有n个冗余结构,冗余结构1,2,3……n,冗余结构对应的任务集为T1,T2……Tn,初始任务子集都为空,任务子集按负载降序排列更新;总任务集为J,根据种类,总任务集可分为A,B,C,D,…类,共m个种类子任务集,J等于所有子任务集的集合,每一类子任务集中任务是相互关联的,需要前面任务的信息;将总任务集分配给n个冗余结构,保持n个冗余结构任务之间相互独立,同时n个冗余结构之间任务负载尽可能均衡,即求解J=T1+T2+…Tn:a)在总任务集中,按照事先知道的任务分类,根据m个种类任务集的任务负载,进行升序排序,然后前n个依次放入任务集合T1,T2,T3,……Tn,并从总任务集J中移除已分配的种类任务集,冗余结构对应的任务子集更新负载并排序,如果总任务集不为空,继续a);b)总任务集J此时分成任务集T1,T2,……Tn……,分别对应每一个冗余结构,计算划分后调度补偿代价Fcost1;由于冗余结构能够并行运行,Fcost1=MAX(F1,F2,F3……Fn)+a,其中Fn为子任务集的负载,a与系统有关,表示并行计算结束后所有任务同步的代价,同时原来总任务集J也有一个系统负载Fj,判断FCOST1与FJ大小,如果前者大于后者,切换失败,系统负载调度标志重新设为0,执行(3),否则系统调度标志设为1,执行(5);(5)冗余资源独立完成各自的任务集,进行计算,将任务集的返回结果通过通信的方式告诉系统,系统正常运用该结果。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于清华大学,未经清华大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201710038009.5/,转载请声明来源钻瓜专利网。