[发明专利]一种自适应的检查点间隔动态设置方法有效
申请号: | 201911361269.1 | 申请日: | 2019-12-26 |
公开(公告)号: | CN111124720B | 公开(公告)日: | 2021-05-04 |
发明(设计)人: | 虞致国;常龙鑫;顾晓峰 | 申请(专利权)人: | 江南大学 |
主分类号: | G06F11/00 | 分类号: | G06F11/00 |
代理公司: | 哈尔滨市阳光惠远知识产权代理有限公司 23211 | 代理人: | 彭素琴 |
地址: | 214000 江苏*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 自适应 检查点 间隔 动态 设置 方法 | ||
1.一种检查点间隔的动态设置方法,其特征在于,所述方法在软错误发生之后,根据上一次软错误到本次软错误的时间间隔Δt对软错误间隔历史表SEIHT和模式历史表PHT进行更新,并使用SEIHT和PHT对下一个软错误间隔进行预测,再将预测的本次软错误到下一次软错误的时间间隔与设定的阈值T进行比较,根据比较结果确定检查点的设置频率,从而实现对检查点设置间隔的动态调整;
所述方法包括:
步骤一:将软错误发生次数N的值加1,记录检测到软错误时处理器的周期计数器指示的时刻,执行步骤二;
步骤二:判断本次记录是否是第一条记录,结果为否,执行步骤三;结果为是,执行步骤四;
步骤三:将上一次记录的时刻记为t0,将本次记录的时刻记为t1,将Δt=t1-t0作为上一次软错误到本次软错误的时间间隔,并将系统中最近一个软错误发生的时刻Tfinal赋值为t1,执行步骤五;
步骤四:将本次记录的时刻记为t0,并将系统中第一个软错误发生的时刻Tstart以及SEIHT所记录的最早的软错误发生时刻Tstart′均赋值为t0,算法结束;
步骤五:判断软错误间隔历史表SEIHT是否已满,结果为是,执行步骤六;结果为否,执行步骤七;
步骤六:将SEIHT中的软错误间隔标志FLAG的最高位SEIHT.FLAG.HSB的时间戳赋值给Tstart′,之后该时间戳所在的存储空间允许被覆盖、允许用于记录新的软错误发生时刻,计算软错误间隔阈值T代表的是SEIHT中记录的k个软错误间隔的平均软错误间隔,执行步骤七;
步骤七:将步骤三中计算的Δt与软错误间隔阈值T进行比较,并根据比较结果对SEIHT的软错误间隔标志SEIHT.FLAG及对应的时间戳SEIHT.TIMESTAMP进行更新:
若Δt≥T,认为该间隔为“长间隔”,将SEIHT.FLAG左移一位,同时将1写入SEIHT中的软错误间隔标志FLAG的最低位SEIHT.FLAG.LSB,将该FLAG位对应的XLen位的时间戳TIMESTAMP赋值为t0;XLen是处理器记录运行周期的计时器的宽度;
若ΔtT,认为该间隔为“短间隔”,将SEIHT.FLAG左移一位,同时将0写入SEIHT中软错误间隔标志FLAG的最低位SEIHT.FLAG.LSB,将该FLAG位对应的XLen位的时间戳TIMESTAMP赋值为t0;
执行步骤八;
步骤八:对软错误发生间隔进行预测,首先判断本次预测是否是第一次进行预测,结果为否,执行步骤九;结果为是,执行步骤十;
步骤九:根据SEIHT.FLAG.LSB和两位饱和计数器的状态转换图对上一次预测所用的模式历史表PHT项进行更新,执行步骤十;
步骤十:以k位SEIHT.FLAG的值作为索引,查询具有2k个表项的PHT,执行步骤十一;
步骤十一:根据步骤九查询到的两位饱和计数器的值预测软错误的发生间隔,如果计数器的值为“00”或“01”,预测下一个软错误间隔是“短间隔”,将检查点的设置间隔Tc赋值为较短间隔Ts;
如果计数器的值为“10”或“11”,预测下一个软错误间隔是“长间隔”,将检查点的设置间隔Tc赋值为较长间隔Tl。
2.根据权利要求1所述的方法,其特征在于,TlTs,其中,较短间隔其中,C表示建立检查点的时间开销,ρ表示从系统启动到最近一次发生软错误期间的软错误发生率,其中,Tstart代表的是系统中第一次发生软错误的时刻。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于江南大学,未经江南大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911361269.1/1.html,转载请声明来源钻瓜专利网。