CN107563511A - 一种实时系统可用时间快速估算与优化方法 - Google Patents
一种实时系统可用时间快速估算与优化方法 Download PDFInfo
- Publication number
- CN107563511A CN107563511A CN201710690737.4A CN201710690737A CN107563511A CN 107563511 A CN107563511 A CN 107563511A CN 201710690737 A CN201710690737 A CN 201710690737A CN 107563511 A CN107563511 A CN 107563511A
- Authority
- CN
- China
- Prior art keywords
- time
- voltage
- soft error
- model
- task
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 30
- 238000005457 optimization Methods 0.000 title claims abstract description 18
- 230000003068 static effect Effects 0.000 claims abstract description 24
- 238000012549 training Methods 0.000 claims abstract description 10
- 230000009471 action Effects 0.000 claims description 59
- 230000004907 flux Effects 0.000 claims description 38
- 230000006870 function Effects 0.000 claims description 38
- 238000013528 artificial neural network Methods 0.000 claims description 37
- 230000006399 behavior Effects 0.000 claims description 22
- 210000002569 neuron Anatomy 0.000 claims description 14
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 claims description 14
- 238000004519 manufacturing process Methods 0.000 claims description 9
- 230000008569 process Effects 0.000 claims description 9
- 238000010606 normalization Methods 0.000 claims description 6
- 230000002829 reductive effect Effects 0.000 claims description 5
- 230000001052 transient effect Effects 0.000 claims description 5
- 238000002474 experimental method Methods 0.000 claims description 4
- 239000011159 matrix material Substances 0.000 claims description 4
- 238000012935 Averaging Methods 0.000 claims description 3
- 238000003491 array Methods 0.000 claims description 3
- 230000015654 memory Effects 0.000 claims description 3
- 230000002123 temporal effect Effects 0.000 claims description 3
- 238000012546 transfer Methods 0.000 claims description 3
- 230000021824 exploration behavior Effects 0.000 claims description 2
- 238000002347 injection Methods 0.000 claims description 2
- 239000007924 injection Substances 0.000 claims description 2
- 238000012804 iterative process Methods 0.000 claims description 2
- 230000008439 repair process Effects 0.000 claims description 2
- 238000003062 neural network model Methods 0.000 abstract description 3
- 230000003247 decreasing effect Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 230000033228 biological regulation Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 4
- 230000002787 reinforcement Effects 0.000 description 4
- 230000032683 aging Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 150000001875 compounds Chemical class 0.000 description 3
- 230000007423 decrease Effects 0.000 description 3
- 239000002245 particle Substances 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 239000000243 solution Substances 0.000 description 2
- 230000003213 activating effect Effects 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000001963 growth medium Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000013178 mathematical model Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 230000036961 partial effect Effects 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000035882 stress Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000036962 time dependent Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Feedback Control In General (AREA)
Abstract
本发明公开了一种实时系统可用时间快速估算与优化方法,包括以下步骤:首先,根据静态软错误故障率模型获得样本数据。接着,利用样本数据训练BP神经网络模型作为动态软错误故障率模型。然后,根据动态软错误故障率模型进一步建立平均无临时故障时间模型,结合平均无永久故障时间模型,获得系统可用时间模型,实现系统可用时间估算。最后,定义系统可用时间优化问题,对Q‑learning算法中一系列参数建模后,解决优化问题,达到优化系统可用时间目标。
Description
技术领域
本发明涉及实时系统中实时系统可靠性领域,综合考虑了软错误可靠性和硬错误可靠性两种不同的可 靠性,针对软错误故障率选择合适的参数,利用机器学习中的BP神经网络训练软错误动态模型,进一步 估算平均无临时故障时间MTTFT,结合硬错误可靠性影响的平均无永久故障时间MTTFP,最终获得系统可 用时间MTTFSystem。为优化系统可用时间,通过强化学习中Q-learning算法调整任务集运行电压,使得 系统可用时间收敛于较优的状态,同时考虑系统的时间约束条件,最终确定任务集执行电压,达到满足约 束条件下优化系统可用时间的目标。具体来说,是一种利用BP神经网络加快估算系统可用时间和利用Q-learning算法确定电压调整方案优化系统可用时间的方法。
背景技术
实时系统指能够及时响应系统外部或者内部、同步或者异步事件,在指定时间期限内处理完事件的计 算机系统。实时系统的计算结果在满足正确性的同时,还需要满足及时性,即需要在规定的时间内完成对 事件的处理。系统的可靠性定义为在故障可能发生的情况下正确运行的概率,当故障率越来越高时,系统 的可靠性随之下降。所述系统指处理器系统。
随着用户对微处理器性能要求的不断提高,同时半导体CMOS制造工艺的飞速发展,微处理器复杂度 也相应增大。微处理器晶体管数目和集成度持续增加,晶体管栅极长度持续缩小,使得电路系统很容易受 到电磁干扰、瞬时电压扰动、高能粒子撞击的影响,发生软错误。软错误一般指由于高能粒子撞击在半导 体中造成的随机、临时的状态改变或瞬变。软错误的发生使得系统软错误可靠性降低。同时,系统可靠性 还受到硬错误的影响。硬错误一般指由于晶体管或者系统设备硬件损坏造成的永久故障。硬错误的发生使 得系统硬错误可靠性降低。系统的正常运行需要维持一定的功耗密度,过高的运行电压会使得系统老化加 速,使得硬错误提前发生,导致硬错误可靠性降低。由于系统可靠性同时受到软错误可靠性和硬错误可靠 性的影响,因此需要同时考虑两者,以平均无故障时间(MeanTime To Failure,MTTF)定义系统的可用时 间,衡量系统整体可靠性的好坏,软错误可靠性影响系统平均无临时故障时间MTTFT(MTTF due to Transient Fault),硬错误可靠性影响系统平均无永久故障时间MTTFP(MTTF due to Permanent Fault), 系统可用时间取决于平均无临时故障时间和平均无永久故障时间中的较小值。
由于硬错误可靠性可以利用Xiang等人提出的工具或者其他模型较好地计算,着重考虑高能粒子撞击 影响的软错误可靠性。软错误可靠性可以用软错误故障率来衡量。Ebrahimi等人提出了一种跨层软错误故 障率模型,能够静态地计算出某个条件下系统的软错误故障率的数值,但是在例如飞机这样一个实时系统 中,设备的临界电荷Qcrit,环境中中子通量Flux、电压Voltage和温度Temperature等因素是动态变化的, 因此需要研究动态条件下系统的软错误故障率。
神经网络在非线性系统中广泛应用,它是基于人脑中神经元的构造以及神经元工作方式抽象出的数学 模型。神经网络的通用逼近性已被证明,任何Borel可测函数能利用神经网络以任意精确度逼近,从而完 成分类或者函数逼近。BP神经网络是神经网络中常用的一种。
当系统运行在较高的电压时,发生软错误的临界电荷Qcrit也相应提高,软错误故障率减少,系统的平 均无临时故障时间MTTFT增加,但由于较高的运行电压,加速了系统的老化,使得电迁移、不稳定的介电 击穿或压力迁移提早发生,硬错误提前发生,使得平均无永久故障时间MTTFP减少。反之,当运行电压较 小时,老化变慢,系统的MTTFP增加,但临界电荷Qcrit减少,很小能量的电荷都可能引发软错误,使得软 错误故障率增加,系统的MTTFP减少。由此看来,需要权衡软错误可靠性和硬错误可靠性,寻找一个平衡 点,从而使得系统的可用时间最大。
Q-learning是强化学习方法的一种,常用作控制器来最大化系统长期收益,在本文中即是使得系统 长期运行在可用时间较优的状态,优化系统的可用时间。强化学习是一种在线学习技术,通过“试探-评 价”作为学习过程,系统(智能体)首先感知环境状态,根据当前状态从行为空间中选择动作执行,环境 由于行为影响发生状态转移,并反馈奖励/惩罚给系统。系统感知新的环境状态,结合环境反馈,再次选 择动作执行,选择原则是使系统再次得到奖励的概率增大。
发明内容
本发明的目的是提供一种实时系统可用时间快速估算与优化方法,该方法以静态软错误故障率模型获 得样本数据,利用BP神经网络作为泛化工具,根据样本数据训练BP神经网络,以训练好的BP神经网络 作为动态软错误故障率模型,进一步对系统的可用时间建模,完成系统可用时间的快速估算。同时,在定 义完系统可用时间优化问题后,为解决优化问题,通过强化学习中Q-learning算法调整任务集运行电压, 使得系统可用时间收敛于较优的状态,同时考虑系统的时间约束条件,最终确定任务集执行电压,达到满 足约束条件下优化系统可用时间的目标。
本发明的目的是这样实现的:
一种实时系统可用时间快速估算与优化方法,该方法包括以下步骤:
步骤1:静态软错误故障率模型建立
步骤2:利用静态软错误故障率模型建立样本,训练BP神经网络作为动态软错误故障率模型
步骤3:在动态软错误故障率模型基础上进一步建立平均无临时故障时间模型MTTFT,结合平均无永久故 障时间模型MTTFP,建立系统可用时间模型MTTFSystem;
步骤4:建立优化系统可用时间方法,优化系统可用时间
所述步骤1具体包括:
步骤A1:设备层次静态软错误故障率模型的建立
其中:Constant为常数,其值为2.2*10-5,Flux为环境中中子通量的大小,Area为设备对软错误故障敏感 区域面积,为通过注入电流实验确定不同设备的临界电荷,Qcoll为由CMOS制造工艺确定的 电荷收集效率;
步骤A2:系统层次静态软错误故障率模型的建立
其中:SERsystem为系统软错误故障率,为各类设备软错误故障率,这里设备种类分为静态 存储器(SRAM)、锁存器(Latch)、逻辑门电路(Logic Gate)3类,AVFi为各类设备的架构易损参数,ωi为 SERcomponent占SERsystem的比重,这里用3类设备数目与设备总数目的比值描述ωi。
所述步骤2具体包括:
步骤B1:根据静态软错误故障率模型建立样本
系统的临界电荷由三类设备临界电荷的平均值共同决定,公式如下:
其中:为三类设备临界电荷的平均值,ωi为三类设备数目与设备总数目的比值。
在动态环境中,系统软错误故障率SERsystem由系统的临界电荷系统环境中中子通量Flux, 系统操作电压Voltage和温度Temperature4个参数决定。系统的软错误故障率与中子通量Flux成正比例关 系,中子通量Flux越高,系统的软错误故障率越高。系统的软错误故障率与电压Voltage成反比例关系, 电压Voltage越高,系统的软错误故障率越低,反比例关系由设备的CMOS制造工艺决定。系统的软错误故 障率与温度Temperature成正比例关系,温度Temperature越高,系统的软错误故障率越高。
不同的临界电荷中子通量Flux,系统操作电压Voltage和温度Temperature4个参数可以 决定该组合情况下系统的软错误故障率SERsystem,这5个参数可以作为一个样本。利用静态软错误故障率 模型建立多组样本。
步骤B2:利用样本建立动态软错误故障率模型
BP神经网络分为3层:输入层、隐含层、输出层,输入层包含4个神经元节点,分别为系统的临界电 荷系统环境中中子通量Flux,系统操作电压Voltage和温度Temperature。输出层包含1个神 经元节点,为系统的软错误故障率。隐含层节点个数根据经验公式确定:
其中h为隐含层神经元节点个数,i为输入层神经元节点个数,o为输出层神经元节点个数,a为1~10之间 任意常数。
确定完BP神经网络拓扑结构,输入层、隐含层、输出层的节点个数后,利用静态软错误故障率样本 训练BP神经网络,获得动态软错误故障率模型。
所述步骤3具体包括:
步骤C1:任务集模型的建立:
其中:n为任务集中独立任务的个数;每个任务τi(1≤i≤n)可以表示为一个三元组:τi=(ci,pi,di)。 其中ci是任务在系统最大频率下的执行时间,pi是任务周期,即每经过个pi时间单元释放一个该任务,di是 任务的相对截止时间。
步骤C2:任务执行时间模型的建立:
ti=ci/fi
其中:ti为任务τi在频率为fi时的执行时间,fi(fmin≤fi≤fmax)为处理器的操作频率,频率以fmax为标 准进行归一化处理,频率值范围为[0,1],fmin为处理器最小操作频率,fmax为处理器最大操作频率,ci为 任务τi在最大频率fmax下执行时间。
步骤C3:不同频率下软错误故障率模型的建立
根据步骤B2训练完的动态软错误故障率模型,在确定完临界电荷系统环境中中子通量Flux 和温度Temperature 3个参数后,输入不同的电压vi后,可以输出相应的软错误故障率,由于fi=μ·vi, 即系统频率和电压呈正比例,利用动态软错误故障率模型可以获得不同频率下系统的软错误故障率,当频 率为fi时系统的软错误故障率为λ(fi)。
步骤C4:任务τi临时故障可靠性模型的建立:
任务τi临时故障可靠性模型为:
其中:λ(fi)为操作频率fi时的软错误故障率,ci为任务τi在最大频率fmax下执行时间,fi为处理器的操作频 率;
步骤C5:任务集临时故障率模型的建立:
其中:Ri为任务τi在执行频率为fi时的临时故障可靠性;
步骤C6:平均无瞬时故障的时间MTTFT模型的建立:
其中:为任务集总的执行时间,为首次故障发生在任务集 的第一轮执行中的期望时间;
步骤C7:平均无永久故障时间MTTFP模型的建立:
其中,T为温度,V为电压,ATDDB、θ1、θ2、A、B、C、ρ为经验参数。
步骤C8:系统可用时间MTTFSystem建立:
其中MTTFT为平均无临时故障的时间,MTTFP为平均无永久故障的时间,MTTRT为平均临时故障修复时间, MTTRP为平均永久故障修复时间;令 为一个常数,则系统的可用时间简化成如下关系:
系统可用时间即决定于和MTTFP两者中的较小值。
所述步骤4具体包括:
步骤D1:时间约束条件的建立:
任务集可调度的充分必要条件形式化如下公式所示:
其中CPUrate为处理器利用率,ei为任务τi在频率为fi时的执行时间,根据任务集和处理器模型,对fmax进 行归一化处理,令fmax=1,在fmax时任务的执行时间为ci,所以di为任务的周期。
步骤D2:优化目标的建立:
MTTFDelt∈(-u,+u)
其中u为一个接近0的较小值。
步骤D3:Q-learning算法中在时刻t时状态st的确定:
根据步骤3中的C5、C6、C7步骤,可以计算出在时刻t时和进一步可以算出根据的大小,Q-learning算法状态空间S分为7个子状态,根据如下规则确定时刻t时状态st:
1、当时,远小于此时st=s1,即在时刻t时为s1状态。
2、当时,小于此时st=s2,即在时刻t时为s2状态。
3、当时,稍小于此时st=s3,即在时刻t时为s3状态。
4、当时,约等于此时st=s4,即在时刻t时为s4状态。
5、当时,稍大于此时st=s5,即在时刻t时为s5状态。
6、当时,大于此时st=s6,即在时刻t时为s6状态。
7、当时,远大于此时st=s7,即在时刻t时为s7状态。
其中状态空间S={s1,s2,...,s7},u为一个接近0的常数,Δ为一个常数,表示偏移合适范围的程度,为 时刻t时系统的平均无瞬时故障的时间, 为时刻t时系统的平均无永久故障的时间,
步骤D4:Q-learning算法中在t时刻动作at的确定
本发明的动作指调整电压的策略,动作空间A分为4个动作:
1.a1动作:提高电压V1
2.a2动作:提高电压V2
3.a3动作:降低电压V2
4.a4动作:降低电压V1
其中,V1和V2为电压值,并且V1大于V2,A={a1,a2,a3,a4}为行为空间。
根据如下方法确定在时刻t时的动作at:首先,根据步骤D3确定时刻t时的状态st,接着,以ε概率 在4个动作中随机选择一个动作执行,即在a1,a2,a3,a4中随机选择一个动作作为时刻t时的at;或者以1-ε 的概率选择行为值函数Q(s,a)中估计值最大对应的动作作为时刻t时的at。
其中:Q(s,a)为行为值函数,行为值函数Q(s,a)为一个二维数组,本专利中状态S为7个子状态,A为4个 动作,ε为函数探索行为值,at为时刻t时选择的动作。
步骤D5:Q-learning算法中反馈函数的建立:
其中:为时刻t+1时系统的平均无瞬时故障的时间, 为一个常数,为时刻t+1时系统的平均无永久故障的时间,r为Q-learning算法中反 馈函数。
步骤D6:Q-learning算法优化系统可用时间算法:
1)初始化Q(s,a)矩阵为0矩阵,创建数组ArrayA和ArrayB,时刻t=0
2)for i=1 to k do
3)在fmin至fmax中随机选择一个频率作为时刻t时ft,ft对应的电压为vt;
4)根据ft和vt计算和根据步骤D3确定时刻t时状态st
5)根据和利用ArrayA或者ArrayB存放这样一条记录
6)Whilest≠s4 do
7)根据步骤D4确定时刻t时动作at,执行完动作at后对应的电压为vt+1和ft+1
8)根据vt+1和ft+1计算时刻t+1时和根据步骤D3确定时刻t时 状态st+1
9)根据和利用ArrayA或者ArrayB存放这样一条记录
10)根据和步骤D5确定反馈函数的值r
11)根据反馈函数的值r和Q-learning算法中更新行为值函数的规则更新Q(s,a)
12)t=t+1
13)st=st+1
14)if st=s4 do
15)break;
16)end if
17)end while
18)end for
19)if ArrayA不为空集
20)遍历ArrayA选择记录中MTTFSystem最大值对应的频率f作为系统运行电压fopt,fopt对应的电压为 vopt,vopt运行时系统可用时间为
21)elseArrayA为空集
22)if ArrayB不为空集
23)遍历ArrayB选择记录中MTTFSystem最大值对应的频率f作为系统运行电压fopt,fopt对应的电压为 vopt,vopt运行时系统可用时间为
24)end if
其中:ft为时刻t的频率,vt为时刻t时的电压,为时刻t时的处理器利用率,为时刻t时系 统的平均无瞬时故障的时间, 为时刻t时系统的平均无永久故障的时间, Q(s,a)为行为值函数,i当前迭代次数,k为迭代次数上限,t为系统所在的时刻。vopt任 务集最优执行电压,为任务集在电压为vopt时的系统可用时间,ArrayA、ArrayB为2个不 定数组,用来存放迭代过程中的记录,每条记录由这样的键值对构成,ArrayA存放使得的记录,ArrayB存放的记录, 每进行一次调整电压产生一条记录。如果ArrayA不为空,遍历ArrayA中的记录,记录中最大值作为对应的ft作为fopt,ft对应的电压vt作为vopt。如果ArrayA为空,ArrayB不为空,遍历ArrayB中的记录,记录中最大值作为对 应的ft作为fopt,ft对应的电压vt作为vopt。
本发明的动态软错误故障率模型基于BP神经网络实现,能够在动态环境下较快的估算系统的软错误 故障率,同时结合系统可用时间模型,能够实现系统可用时间的快速估算。同时提出的系统可用时间的优 化方法基于Q-learning算法实现,能够为处理器分配合适的运行电压,使得系统在满足时间约束条件的 前提下,优化系统的可用时间,提高系统的可靠性。
附图说明
图1为本发明流程图;
图2为本发明中神经网络拓扑图;
图3隐含层节点数目对BP神经网络的影响示意图;
图4 BP神经网络软错误故障率预测值与期望值的比较示意图;
图5 10次统计中3种算法平均系统可用时间比较示意图。
具体实施方式
以下结合附图及具体实施例,对本发明作进一步的详细说明。
实施例
步骤1:软错误静态模型建立
步骤A1:设备层次静态软错误故障率模型的建立
设备的CMOS制造工艺参考Bulk Planar-20nm制造工艺,Constant为2.2*10-5,Flux为环境中中子通 量大小,Flux参数以纽约地平线中子通量值设为单位“1”,单位“1”的具体值为56.5m-2*s-1,参考其他 研究工作,设备主要分为3类,静态存储器SRAM、锁存器Latch和逻辑门电路Logic Gate,3类设备在 1V电压和50℃温度下软错误故障率总结如下表所示:
设备 | SRAM | Latch | Logic Gate |
SERcomponent | 2.04E-8 | 1.02E-7 | 1.35E-9 |
软错误故障率的单位为FIT,表示每109小时内发生软错误的个数。
步骤A2:系统层次静态软错误故障率模型的建立
设备SRAM的软错误故障率为2.04E-8FIT,Latch的软错误故障率为1.02E-7FIT,Logic Gate的软错 误故障率为1.35E-9FIT,三类设备的权重ω和架构易损参数AVF总结如下表所示:
由步骤A2获得系统的软错误故障率为 0.775*0.1*2.04E-8+0.025*0.15*1.02E-7+0.2*0.08*1.35E-9=1.59E-8FIT,此时电压为1V、温度为50℃。
步骤2:利用静态软错误故障率模型建立样本,训练BP神经网络作为动态软错误故障率模型
步骤B1:根据软错误静态模型建立样本
CMOS参考Bulk Planar-20nm制造工艺,电压为1V、温度为50℃时,系统的软错误故障率为1.59E-8FIT。 根据文献,SRAM的临界电荷为21fC、Latch的临界电荷为12.49fC、Logic Gate的临界电荷为50.07fC。 因此,系统的临界电荷为0.775*21+0.025*12.49+0.2*50.07=26.6fC。
系统的软错误故障率与中子通量Flux成正比例关系,中子通量Flux越高,系统的软错误故障率越高。 例如当Flux为20.25时,此时系统的软错误故障率为20.25*1.59E-8FIT=32.20FIT。
系统的软错误故障率与电压Voltage成反比例关系,电压Voltage越高,系统的软错误故障率越低,反 比例关系由设备的CMOS制造工艺决定。本发明中电压范围为0.7V-1.2V,0.7V时系统的软错误故障率为 1.2V时的6.5倍。假设为线性关系进行拟合,系统的软错误故障率与电压关系式约是: SER=(-11*Voltage+14.2)/3.2*1.59E-8。当电压为1.2V时,系统的软错误故障率约为 (-11*1.2+14.2)/3.2*1.59E-8=0.49E-8FIT。
系统的软错误故障率与温度Temperature成正比例关系,温度Temperature越高,系统的软错误故障 率越高。本发明中温度范围为0℃到100℃,温度为100℃时系统软错误故障率是温度为25℃的1.05倍。 假设为线性关系进行拟合,系统的软错误故障率与温度关系式约是: SER=((1.00/1500.00)*Temperature+59.00/60.00)/(61/60)*1.59E-8。当温度为75℃时,带入相关关系 式,系统的软错误故障率约为((1.00/1500.00)*75+59.00/60.00)/(61/60)*1.59E-8=1.61E-8FIT。
系统的临界电荷Qcrit与电压成正比例关系。不同的系统的临界电荷环境中中子通量Flux, 系统操作电压Voltage和温度Temperature4个参数可以决定该组合情况下系统的软错误故障率SERsystem, 这5个参数可以作为一个样本。下面给出5组样本示例:
Index | Qcrit(fC) | Flux(″1″) | Voltage(V) | Temperature(℃) | SER(″1″) |
1 | 18.92 | 2.45 | 0.71 | 48 | 1.11E-07 |
2 | 19.88 | 21.25 | 0.74 | 15 | 8.41E-07 |
3 | 23.52 | 20 | 0.88 | 82 | 5.24E-07 |
4 | 29.44 | 8 | 1.11 | 4 | 7.20E-08 |
5 | 21.16 | 2.5 | 0.80 | 24 | 8.53E-08 |
步骤B2:利用样本建立动态软错误故障率模型
参阅图2,为本发明BP神经网络拓扑结构图。
BP神经网络分为3层:输入层、隐含层、输出层,输入层包含4个神经元节点,x1到x4分别代表系统 的临界电荷系统环境中中子通量Flux,系统操作电压Voltage和温度Temperature。输出层包 含1个神经元节点,y1代表系统的软错误故障率。wij为输入层中节点和隐含层中节点连接权值,wjk为隐 含层中节点和输出层中节点连接权值。
根据隐含层节点个数的经验公式进行节点个数寻优,h取3到12进行实验,进行隐含层节点寻优。结 果如图3所示(隐含层节点数目对BP神经网络的影响)。
以BP神经网络性能函数值和迭代次数作为评价标准,以均方差Mse作为性能函数。当隐含层节点为 12时,网络性能函数值最低为0.620*10-7,迭代次数为30次,少于其他情况下的迭代次数,因此确定神 经网络为输入层4个节点,隐含层为12个节点,输出层为1个节点的4-12-1的神经网络拓扑,激活函数 采用双曲正切函数。
首先对数据归一化处理。因为激活函数为双曲正切函数,取值范围为-1~1之间,利用matlab中 mapminmax函数将输入样本中输入节点和输出节点做归一化处理,也映射到-1~1之间。
归一化完成后,创建4-12-1的拓扑结构的神经网络,初始化神经网络,设置神经网络性能函数为均 方差Mse,训练目标误差范围0.0001,最大训练次数为5000次,神经网络学习率为0.05,动量因子为0.95, 设置相关参数后,利用前800组样本进行神经网络的训练。
神经网络训练完成后,软错误故障率动态模型也就确立了,利用200组数据进行误差分析。将后200 组样本数据进行归一化处理后,导入训练好的BP神经网络模型,进行软错误故障率的预测,再将神经网 络输出值进行反归一化操作,得到神经网络关于软错误故障率的预测值。选择20组样本,其中预测值为 BP神经网络模型估算出的软错误故障率,期望值为软错误静态模型计算出的软错误故障率,预测值与期望 值之间的比较如图4所示。
选出10组数据进行误差分析,结果如下表所示:
样本序号 | 预测值 | 期望值 | 误差 |
1 | 4.82E-07 | 4.85E-07 | -0.6% |
2 | 6.15E-08 | 6.40E-08 | 4.0% |
3 | 1.07E-07 | 1.04E-07 | 2.8% |
4 | 2.88E-07 | 2.88E-07 | 0% |
5 | 2.42E-07 | 2.41E-07 | 0.4% |
6 | 5.33E-08 | 5.02E-08 | 5.8% |
7 | 2.18E-07 | 2.15E-07 | 1.3% |
8 | 4.08E-08 | 4.22E-08 | 3.4% |
9 | 2.51E-07 | 2.50E-07 | 0.4% |
10 | 6.43E-07 | 6.21E-07 | 3.4% |
如表所示,预测值与期望值最大误差为5.8%,最小误差为0%,由于软错误故障率单位为109小时内发 生软错误故障率的个数,在10-7*109=102数量级到10-8*109=101数量级上,软错误个数的误差数量级在101以内,利用BP神经网络算软错误故障率具有参考性。BP神经网络很好地拟合了样本数据,并且没有出现 过拟合。选择临界电荷Qcrit、环境中中子通量Flux、系统的操作电压Voltage、系统运行时的温度 Temperature4个参数作为神经网络的输入层节点,能够有效地估算动态环境下软错误故障率。
步骤3:在动态软错误故障率模型基础上进一步建立平均无临时故障时间模型MTTFT,结合平均无永久故 障时间模型MTTFP,建立系统可用时间模型MTTFSystem
步骤C1:任务集模型的建立:
设置任务集模型如下:
如表所示,任务集共有10个任务,时间单位为ms。
步骤C2:任务执行时间模型的建立
本发明中处理器频率范围为16Hz至2.25GHz,电压范围为0.7V至1.2V。电压和频率呈正比例关系, 电压最小精度为0.01V,部分电压和频率之间的关系如下表所示:
任务τ1的最小执行时间为在2.25GHz运行时的时间为2s,当任务τ1运行在电压为1.0V、频率为1.75GHz 时,执行时间为2/0.78=2.56s。
步骤C3:不同频率下软错误故障率模型的建立
根据动态软错误模型获得处理器电压为vi、频率为fi时系统的软错误故障率,记做λ(fi),如设定参数 临界电荷为26.6fC时,中子通量Flux为单位“1”时,温度Temperature为50℃时,电压为1.0V、 频率为1.75GHz下,软错误故障率为1.59E-8,此时λ(1.75)=1.59E-8。
步骤C4:任务τi临时故障可靠性模型的建立:
如电压为1.0V、频率为1.75GHz下,软错误故障率为1.59E-8,任务τ1的临时故障可靠性为 e-1.59E-8*2.56=e-4.07E-8。
步骤C5:任务集临时故障率模型的建立:
根据公式,任务集在电压为1.0V、频率为1.75GHz时的的值为3.83E-7;
步骤C6:平均无瞬时故障的时间MTTFT模型的建立:
由公式计算任务集在电压为1.0V、频率为1.75GHz下的MTTFT为 1.982年。
步骤C7:平均无永久故障时间MTTFP模型的建立
由公式计算任务集在电压为1.0V、频率为1.756Hz下的MTTFP为 2.472年,各参数值如下表所示:
步骤C8:系统可用时间MTTFSystem建立:
令由公式计算任务集在电压为1.0V、频率为1.75GHz 下,温度为50℃下,MTTFSystem的值为1.982年。
步骤4:建立优化系统可用时间方法,优化系统可用时间
步骤D1:时间约束条件的建立:
任务集可调度的充分必要条件形式化如下公式所示:
任务集在1.0V/1.75GHz下,处理器利用率CPUrate为0.79,小于1,所以满足时间约束条件,任务 集运行在电压为1.0V、频率为1.75GHz下能够满足时间约束条件。
步骤D2:优化目标的建立:
令u=0.5,则MTTFDelt∈(-0.5,+0.5)时,认为系统MTTFSystem较 大,为一个合适的状态。
步骤D3:Q-learning算法中在时刻t时状态st的确定:
令u=0.5,Δ=1,则系统状态集S如下:
状态确定算法举例:如在t时刻即在t时刻任务集运行频率为1.756HZ,此时对应的 电压为1.0V,计算t时刻为1.982年,为2.472年,为1.982年,为 0.4906年,此时对应状态集此时状态为s4状态,即st=s4。
步骤D4:Q-learning算法中在t时刻动作at的确定
本发明的动作指调整电压的策略,动作空间分为4个动作,令行为V1=0.1V,V2=0.05V,行为集A为 如下表所示:
动作 | a1 | a2 | a3 | a4 |
动作描述 | 提高较大电压 | 提高电压 | 降低电压 | 降低较大电压 |
电压 | +0.1V | +0.05V | -0.05V | -0.1V |
动作选择算法举例:当t时刻时,st=s4,此时为状态4,为最终状态不进行电压调整。 当t时刻时,对应的电压为0.9V,此时为1.475年,为2.85年,为 1.475年,为1.375年,此时st=s3为状态3,令ε=0.1:假设此时随机数tmpI=0.05,此时 tmpI<ε,在4个动作中随机选择一个动作执行,即随机在a1到a4中选择一个,如果选择动作a1,则在当 前0.9V执行电压上增加0.1V,t+1时刻的执行电压为1V;假设此时随机数tmpI=0.7,此时tmpI≥ε, 此时选择行为值函数最大的动作执行,查找行为值函数Q(s,a),此时状态为s3状态,如果此时Q(s3,a1)=0.2、 Q(s3,a2)=0.8、Q(s3,a3)=0、Q(s3,a4)=0,此时Q(s3,a2)=0.8最大,选择动作a2,增加0.05V,则t+1 时刻的执行电压为0.95V。
步骤D5:Q-learning算法中反馈函数的建立:
反馈函数如下:
步骤D6:Q-learning算法优化系统可用时间算法:
本实施例中,Q-learning算法优化系统可用时间算法的输入参数有任务集状态集S,行为集A,反 馈函数r,α=0.2为学习率,γ=0.8为反馈折扣因子,Q(s,a)为行为值函数,行为值函数为7个状态以及 4个动作对应的7乘以4的二维数组,k=1000为迭代次数上限,t为系统所在的时刻。首先初始Q(s,a)中 所有值为0,初始化ArrayA和ArrayB为空。假设t=0时刻的初始电压为0.95V,此时频率为1.625GHz, 根据步骤D3,为1.691年,为2.65年,为1.691年,为0.959 年,此时st=s3为状态3,CPUrate为0.85,状态确定完毕后,产生<1.691年,0.95V>这样一条记录,由于所以将记录<1.691年,0.95V>放入ArrayB。
根据步骤D4,确定t=0时刻的动作,假设执行动作a2,增加电压0.05V,则t=1时刻的执行电压为1.0V, 根据步骤D3,计算为1.982年,为2.472年,为1.982年,为 0.4906年,此时t=1时刻对应状态集为s4状态,状态确定完毕后,产生<1.982 年,1.0V>这样一条记录,由于所以将记录<1.982年,1.0V> 放入ArrayA,根据反馈函数r,则r(s4,a2)=1,根据Q-learning算法中的更新规则,更新Q(s3,a2)=0+ 0.2*(1+0.8*0)=0.2,更新完毕后,将t=1时刻的状态s4取代t=0时刻的s3状态,将t=1时刻的电压1.0V 取代t=0时刻的0.95V作为当前电压,将t=1时刻取代t=0时刻作为当前时刻。
当t=1时刻时,此时运行电压为1.0V、频率为1.75GHz,根据步骤D3,计算为1.982年, 为2.472年,为1.982年,为-0.4906年,此时 t=1时刻对应状态集为s4状态,此时为最终状态,不再进行电压调整。迭代次数i加1,随 机一个电压如0.75V,更新时刻t=2时刻,进行新一轮的迭代过程,不断训练行为值函数Q(s,a)直到k次 迭代完成。
当k次迭代完成后,获得最优的状态行为对,s1状态对应的最优动作为a1,s2状态对应的最优动作为a1, s3状态对应的最优动作为a2,s4状态为最终状态,s5状态对应的最优动作为a3,s6状态对应的最优动作为a4, s7状态对应的最优动作为a4。当系统以0.7V到1.2V中任意一种电压执行任务集时,都能够自主选择最优 的动作进行电压调整,最终收敛于状态s4,使得系统运行在可用时间较大的状态下。
为了满足时间约束条件,需要进一步根据ArrayA和ArrayB确定最终的运行电压。如果ArrayA不为空, 则遍历ArrayA在满足约束条件下中选择最优的电压vopt使得MTTFSystem较大。如果ArrayA为空,说明不 存在电压使得MTTFDelt∈(-0.5,+0.5),为满足时间约束条件,在ArrayB中选择最优的电压使得 MTTFSystem较大。如果ArrayA和ArrayB都为空,则说明不存在执行电压能够让任务集在时间约束条件下 完成。
本实施例中,ArrayA不为空,如下表为ArrayA中的记录,同时附上电压值对应的MTTFT、MTTFP、 MTTFDelt和CPUrate数值,如表所示:
电压(V) | MTTFT(年) | MTTFP(年) | MTTFSystem(年) | MTTFDelt(年) | CPUrate |
1 | 1.982 | 2.472 | 1.982 | -0.490 | 0.789 |
1.01 | 2.052 | 2.44 | 2.052 | -0.388 | 0.778 |
1.02 | 2.128 | 2.407 | 2.128 | -0.279 | 0.767 |
1.03 | 2.210 | 2.376 | 2.210 | -0.166 | 0.757 |
1.04 | 2.298 | 2.345 | 2.298 | -0.047 | 0.747 |
1.05 | 2.393 | 2.315 | 2.315 | 0.078 | 0.737 |
1.06 | 2.497 | 2.285 | 2.285 | 0.212 | 0.726 |
1.07 | 2.610 | 2.257 | 2.257 | 0.353 | 0.717 |
由表可以看出,当处理器以ArrayA中电压执行时,CPUrate≤1,满足时间约束条件,其对应的 MTTFDelt∈(-0.5,0.5),约束条件和优化目标都达到了要求,ArrayA中的电压值都是优化目标的一个解。 在这些解中,通过遍历得到了当电压为1.05V时,系统可用时间MTTFSystem最大为2.315年,因此选择1.05V 作为任务集最优的执行电压。
将Q-learning优化系统可用时间算法称为Q-learning电压调整算法(Q-learningVoltage Scaling Algorithm,QVSA),为了验证QVSA在优化系统可用时间的有效性,设计2种电压调整算法进行对比:固 定电压调整算法(Fixed Voltage Scaling Algorithm,FVSA)和随机电压调整算法(Random Voltage Scaling Algorithm,RVSA)。
Q-learning电压调整算法(QVFS):当系统处于7个子状态的一种时,根据最优的状态-动作对,选择动 作对应的电压进行调整。
固定电压调整算法(FVSA):当系统状态处于状态1、2、3时选择增大固定电压,增大电压分为增大0.05V 和增大0.1V两种情形,系统处于状态5、6、7时选择降低固定电压,降低电压分为降低0.05V和降低0.1V 两种情形。
随机电压调整算法(RVSA):当系统状态处于1、2、3、5、6、7状态时,随机选择增大电压或者降低电 压,增大电压随机选择增大0.05V或者0.1V,降低电压随机选择降低0.05V或者0.1V。
实验流程如下:每10个时刻作为1个迭代周期,每个迭代周期的开始初始化一个运行电压,遵循各 自的电压调整算法进行电压调整,如果系统状态处于状态4,也就是处于MTTFDelt∈(-0.5,0.5)的状态, 此时认为系统可用时间较优,保持电压不变运行而不再进行电压调整。为了消除某次迭代过程中的偶然性, 每10次迭代进行一次统计,即一次统计样本包含100个时刻,以每个时刻的平均系统可用时间来衡量电 压调整算法的优劣。图5为10次统计下,3种算法平均系统可用时间的情况。
由图5可以看出,在10次统计中利用QVFS进行电压调整平均系统可用时间都优于其他算法。QVFS算 法平均QVFS比FVSA最多提高4.1%、平均提高2.35%的平均系统可用时间,QVFS比RVSA最多提高11.2%、 平均提高9.4%的平均系统可用时间。优于FVSA算法的主要原因是FVSA算法在选择电压调整时不能做出最 优的动作,固定电压为0.05V的FVSA电压调整通常滞后于QVFS,固定电压为0.1V的FVSA电压调整收敛 于4状态时的系统可用时间差于QVFS。优于RVSA算法的主要原因RVSA算法为随机选择电压调整,存在调 整电压后系统可用时间变得更差的情况,很难收敛于4状态。平均系统可用时间的提高具有清晰的物理意义,10组样本QVFS算法下平均系统可用时间为2.190年,FVSA算法下平均系统可用时间为2.136年和2.142 年,RVSA算法下平均系统可用时间为1.983年,QVFS算法比FVSA和RVSA算法的平均系统可用时间分别 多出0.054年、0.048年、0.207年,使得系统能够无故障多运行19.7天、17.52天和75天,提高了系统 的可靠性。
Claims (5)
1.一种实时系统可用时间快速估算与优化方法,其特征在于该方法包括以下步骤:
步骤1:静态软错误故障率模型建立;
步骤2:利用静态软错误故障率模型建立样本,训练BP神经网络作为动态软错误故障率模型;
步骤3:在动态软错误故障率模型基础上进一步建立平均无临时故障时间模型MTTFT,结合平均无永久故障时间模型MTTFP,建立系统可用时间模型MTTFSystem;
步骤4:建立优化系统可用时间方法,优化系统可用时间。
2.如权利要求1所述的估算和优化系统可用时间方法,其特征在于所述步骤1具体包括:
步骤A1:设备层次静态软错误故障率模型的建立
<mrow>
<msub>
<mi>SER</mi>
<mrow>
<mi>c</mi>
<mi>o</mi>
<mi>m</mi>
<mi>p</mi>
<mi>o</mi>
<mi>n</mi>
<mi>e</mi>
<mi>n</mi>
<mi>t</mi>
</mrow>
</msub>
<mo>=</mo>
<mi>C</mi>
<mi>o</mi>
<mi>n</mi>
<mi>s</mi>
<mi>tan</mi>
<mi>t</mi>
<mo>&times;</mo>
<mi>F</mi>
<mi>l</mi>
<mi>u</mi>
<mi>x</mi>
<mo>&times;</mo>
<mi>A</mi>
<mi>r</mi>
<mi>e</mi>
<mi>a</mi>
<mo>&times;</mo>
<msup>
<mi>e</mi>
<mrow>
<mo>(</mo>
<mo>-</mo>
<mfrac>
<msub>
<mi>Q</mi>
<mrow>
<msub>
<mi>crit</mi>
<mrow>
<mi>c</mi>
<mi>o</mi>
<mi>m</mi>
<mi>p</mi>
<mi>o</mi>
<mi>n</mi>
<mi>e</mi>
<mi>n</mi>
<mi>t</mi>
</mrow>
</msub>
</mrow>
</msub>
<msub>
<mi>C</mi>
<mrow>
<mi>c</mi>
<mi>o</mi>
<mi>l</mi>
<mi>l</mi>
</mrow>
</msub>
</mfrac>
<mo>)</mo>
</mrow>
</msup>
</mrow>
其中:Constant为常数,其值为2.2*10-5,Flux为环境中中子通量的大小,Area为设备对软错误故障敏感区域面积,为通过注入电流实验确定不同设备的临界电荷,Qcoll为由CMOS制造工艺确定的电荷收集效率;
步骤A2:系统层次静态软错误故障率模型的建立
<mrow>
<msub>
<mi>SER</mi>
<mrow>
<mi>s</mi>
<mi>y</mi>
<mi>s</mi>
<mi>t</mi>
<mi>e</mi>
<mi>m</mi>
</mrow>
</msub>
<mo>=</mo>
<munderover>
<mo>&Sigma;</mo>
<mi>i</mi>
<mi>n</mi>
</munderover>
<msub>
<mi>&omega;</mi>
<mi>i</mi>
</msub>
<mo>*</mo>
<msub>
<mi>AVF</mi>
<mi>i</mi>
</msub>
<mo>*</mo>
<msub>
<mi>SER</mi>
<mrow>
<msub>
<mi>component</mi>
<mi>i</mi>
</msub>
</mrow>
</msub>
</mrow>
其中:SERsystem为系统软错误故障率,为各类设备软错误故障率,这里设备种类分为静态存储器(SRAM)、锁存器(Latch)、逻辑门电路(Logic Gate)三类,AVFi为各类设备的架构易损参数,ωi为SERcomponent占SERsystem的比重,这里用三类设备数目与设备总数目的比值描述ωi。
3.如权利要求1所述的估算和优化系统可用时间方法,其特征在于所述步骤2具体包括:
步骤B1:根据静态软错误故障率模型建立样本
系统的临界电荷由三类设备临界电荷的平均值共同决定,公式如下:
<mrow>
<msub>
<mi>Q</mi>
<mrow>
<msub>
<mi>crit</mi>
<mrow>
<mi>s</mi>
<mi>y</mi>
<mi>s</mi>
<mi>t</mi>
<mi>e</mi>
<mi>m</mi>
</mrow>
</msub>
</mrow>
</msub>
<mo>=</mo>
<munderover>
<mo>&Sigma;</mo>
<mi>i</mi>
<mi>n</mi>
</munderover>
<msub>
<mi>&omega;</mi>
<mi>i</mi>
</msub>
<mo>*</mo>
<msub>
<mi>Q</mi>
<mrow>
<msub>
<mi>crit</mi>
<mrow>
<msub>
<mi>component</mi>
<mi>i</mi>
</msub>
</mrow>
</msub>
</mrow>
</msub>
</mrow>
其中:为三类设备临界电荷的平均值,ωi为三类设备数目与设备总数目的比值。
在动态环境中,系统软错误故障率SERsystem由系统的临界电荷系统环境中中子通量Flux,系统操作电压Voltage和温度Temperature四个参数决定;系统的软错误故障率与中子通量Flux成正比例关系,中子通量Flux越高,系统的软错误故障率越高;系统的软错误故障率与电压Voltage成反比例关系,电压Voltage越高,系统的软错误故障率越低,反比例关系由设备的CMOS制造工艺决定;系统的软错误故障率与温度Temperature成正比例关系,温度Temperature越高,系统的软错误故障率越高;
不同的临界电荷中子通量Flux,系统操作电压Voltage和温度Temperature四个参数决定该组合情况下系统的软错误故障率SERsystem,这五个参数作为一个样本;利用静态软错误故障率模型建立多组样本;
步骤B2:利用样本建立动态软错误故障率模型
BP神经网络分为三层:输入层、隐含层、输出层,输入层包含四个神经元节点,分别为系统的临界电荷系统环境中中子通量Flux,系统操作电压Voltage和温度Temperature;输出层包含一个神经元节点,为系统的软错误故障率;隐含层节点个数根据经验公式确定:
<mrow>
<mi>h</mi>
<mo>=</mo>
<msqrt>
<mrow>
<mi>i</mi>
<mo>+</mo>
<mi>o</mi>
</mrow>
</msqrt>
<mo>+</mo>
<mi>a</mi>
</mrow>
其中h为隐含层神经元节点个数,i为输入层神经元节点个数,o为输出层神经元节点个数,a为1~10之间任意常数;
确定完BP神经网络拓扑结构,输入层、隐含层、输出层的节点个数后,利用静态软错误故障率样本训练BP神经网络,获得动态软错误故障率模型。
4.如权利要求1所述的估算和优化系统可用时间方法,其特征在于所述步骤3具体包括:
步骤C1:任务集模型的建立:
其中:n为任务集中独立任务的个数;每个任务τi(1≤i≤n)表示为一个三元组:τi=(ci,pi,di);其中ci是任务在系统最大频率下的执行时间,pi是任务周期,即每经过个pi时间单元释放一个该任务,di是任务的相对截止时间;
步骤C2:任务执行时间模型的建立:
ti=ci/fi
其中:ti为任务τi在频率为fi时的执行时间,fi(fmin≤fi≤fmax)为处理器的操作频率,频率以fmax为标准进行归一化处理,频率值范围为[0,1],fmin为处理器最小操作频率,fmax为处理器最大操作频率,ci为任务τi在最大频率fmax下执行时间;
步骤C3:不同频率下软错误故障率模型的建立
根据步骤B2训练完的动态软错误故障率模型,在确定完临界电荷系统环境中中子通量Flux和温度Temperature三个参数后,输入不同的电压vi后,输出相应的软错误故障率,由于fi=μ·vi,即系统频率和电压呈正比例,利用动态软错误故障率模型可以获得不同频率下系统的软错误故障率,当频率为fi时系统的软错误故障率为λ(fi);
步骤C4:任务τi临时故障可靠性模型的建立:
任务τi临时故障可靠性模型为:
<mrow>
<msub>
<mi>R</mi>
<mi>i</mi>
</msub>
<mo>=</mo>
<msup>
<mi>e</mi>
<mrow>
<mo>-</mo>
<mi>&lambda;</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>f</mi>
<mi>i</mi>
</msub>
<mo>)</mo>
</mrow>
<mfrac>
<msub>
<mi>c</mi>
<mi>i</mi>
</msub>
<msub>
<mi>f</mi>
<mi>i</mi>
</msub>
</mfrac>
</mrow>
</msup>
</mrow>
其中:λ(fi)为操作频率fi时的软错误故障率,ci为任务τi在最大频率fmax下执行时间,fi为处理器的操作频率;
步骤C5:任务集临时故障率模型的建立:
其中:Ri为任务τi在执行频率为fi时的临时故障可靠性;
步骤C6:平均无瞬时故障的时间MTTFT模型的建立:
其中:为任务集总的执行时间,为首次故障发生在任务集的第一轮执行中的期望时间;
步骤C7:平均无永久故障时间MTTFP模型的建立:
<mrow>
<msub>
<mi>MTTF</mi>
<mi>P</mi>
</msub>
<mo>=</mo>
<msub>
<mi>A</mi>
<mrow>
<mi>T</mi>
<mi>D</mi>
<mi>D</mi>
<mi>B</mi>
</mrow>
</msub>
<msup>
<mrow>
<mo>(</mo>
<mfrac>
<mn>1</mn>
<mi>V</mi>
</mfrac>
<mo>)</mo>
</mrow>
<mrow>
<mo>(</mo>
<msub>
<mi>&theta;</mi>
<mn>1</mn>
</msub>
<mo>-</mo>
<msub>
<mi>&theta;</mi>
<mn>2</mn>
</msub>
<mi>T</mi>
<mo>)</mo>
</mrow>
</msup>
<msup>
<mi>e</mi>
<mfrac>
<mrow>
<mi>A</mi>
<mo>+</mo>
<mfrac>
<mi>B</mi>
<mi>T</mi>
</mfrac>
<mo>+</mo>
<mi>C</mi>
<mi>T</mi>
</mrow>
<mrow>
<mi>&rho;</mi>
<mi>T</mi>
</mrow>
</mfrac>
</msup>
</mrow>
其中,T为温度,V为电压,ATDDB、θ1、θ2、A、B、C、p为经验参数;
步骤C8:系统可用时间MTTFSystem建立:
<mrow>
<msub>
<mi>MTTF</mi>
<mrow>
<mi>S</mi>
<mi>y</mi>
<mi>s</mi>
<mi>t</mi>
<mi>e</mi>
<mi>m</mi>
</mrow>
</msub>
<mo>=</mo>
<mi>min</mi>
<mo>{</mo>
<mfrac>
<mrow>
<msub>
<mi>MTTF</mi>
<mi>T</mi>
</msub>
</mrow>
<mrow>
<msub>
<mi>MTTF</mi>
<mi>T</mi>
</msub>
<mo>+</mo>
<msub>
<mi>MTTR</mi>
<mi>T</mi>
</msub>
</mrow>
</mfrac>
<mo>,</mo>
<mfrac>
<mrow>
<msub>
<mi>MTTF</mi>
<mi>P</mi>
</msub>
</mrow>
<mrow>
<msub>
<mi>MTTF</mi>
<mi>P</mi>
</msub>
<mo>+</mo>
<msub>
<mi>MTTR</mi>
<mi>P</mi>
</msub>
</mrow>
</mfrac>
<mo>}</mo>
</mrow>
其中MTTFT为平均无临时故障的时间,MTTFP为平均无永久故障的时间,MTTRT为平均临时故障修复时间,MTTRP为平均永久故障修复时间;令 为一个常数,则系统的可用时间简化成如下关系:
系统可用时间即决定于和MTTFP两者中的较小值。
5.如权利要求1所述的估算和优化系统可用时间方法,其特征在于所述步骤4具体包括:
步骤D1:时间约束条件的建立:
任务集可调度的充分必要条件形式化如下公式所示:
<mrow>
<msub>
<mi>CPU</mi>
<mrow>
<mi>r</mi>
<mi>a</mi>
<mi>t</mi>
<mi>e</mi>
</mrow>
</msub>
<mo>=</mo>
<munderover>
<mo>&Sigma;</mo>
<mi>i</mi>
<mi>n</mi>
</munderover>
<mfrac>
<msub>
<mi>e</mi>
<mi>i</mi>
</msub>
<msub>
<mi>d</mi>
<mi>i</mi>
</msub>
</mfrac>
<mo>&le;</mo>
<mn>1</mn>
</mrow>
其中CPUrate为处理器利用率,ei为任务τi在频率为fi时的执行时间,根据任务集和处理器模型,对fmax进行归一化处理,令fmax=1,在fmax时任务的执行时间为ci,所以di为任务的周期;
步骤D2:优化目标的建立:
MTTFDelt∈(-u,+u)
其中u为一个接近0的较小值;
步骤D3:Q-learning算法中在时刻t时状态st的确定:
根据步骤3中的C5、C6、C7步骤,计算出在时刻t时和进一步算出根据的大小,Q-learning算法状态空间S分为七个子状态,根据如下规则确定时刻t时状态st:
1.当时,远小于此时st=s1,即在时刻t时为s1状态;
2.当时,小于此时st=s2,即在时刻t时为s2状态;
3.当时,稍小于此时st=s3,即在时刻t时为s3状态;
4.当时,约等于此时st=s4,即在时刻t时为s4状态;
5.当时,稍大于此时st=s5,即在时刻t时为s5状态;
6.当时,大于此时st=s6,即在时刻t时为s6状态;
7.当时,远大于此时st=s7,即在时刻t时为s7状态;其中状态空间S={s1,s2,..,s7},u为一个接近0的常数,Δ为一个常数,表示偏移合适范围的程度,为时刻t时系统的平均无瞬时故障的时间, 为时刻t时系统的平均无永久故障的时间,
步骤D4:Q-learning算法中在t时刻动作at的确定
所述动作指调整电压的策略,动作空间A分为四个动作:
1.a1动作:提高电压V1
2.a2动作:提高电压V2
3.a3动作:降低电压V2
4.a4动作:降低电压V1
其中,V1和V2为电压值,并且V1大于V2,A={a1,a2,a3,a4}为行为空间;
根据如下方法确定在时刻t时的动作at:首先,根据步骤D3确定时刻t时的状态st,接着,以ε概率在四个动作中随机选择一个动作执行,即在a1,a2,a3,a4中随机选择一个动作作为时刻t时的at;或者以1-ε的概率选择行为值函数Q(s,a)中估计值最大对应的动作作为时刻t时的at;
其中:Q(s,a)为行为值函数,行为值函数Q(s,a)为一个二维数组,状态S为七个子状态,A为四个动作,ε为函数探索行为值,at为时刻t时选择的动作;
步骤D5:Q-learning算法中反馈函数的建立:
其中: 为时刻t+1时系统的平均无瞬时故障的时间,为一个常数,为时刻t+1时系统的平均无永久故障的时间,r为Q-learning算法中反馈函数;
步骤D6:Q-learning算法优化系统可用时间算法:
1)初始化Q(s,a)矩阵为0矩阵,创建数组ArrayA和ArrayB,时刻t=0
2)for i=1to k do
3)在fmin至fmax中随机选择一个频率作为时刻t时ft,ft对应的电压为vt
4)根据ft和vt计算和根据步骤D3确定时刻t时状态st
5)根据和利用ArrayA或者ArrayB存放这样一条记录
6)Whilest≠s4do
7)根据步骤D4确定时刻t时动作at,执行完动作at后对应的电压为vt+1和ft+1
8)根据vt+1和ft+1计算时刻t+1时和根据步骤D3确定时刻t时状态st+1
9)根据和利用ArrayA或者ArrayB存放这样一条记录
10)根据和步骤D5确定反馈函数的值r
11)根据反馈函数的值r和Q-learning算法中更新行为值函数的规则更新Q(s,a)
12)t=t+1
13)st=st+1
14)if st=s4do
15)break;
16)end if
17)end while
18)end for
19)if ArrayA不为空集
20)遍历ArrayA选择记录中MTTFSystem最大值对应的频率f作为系统运行电压fopt,fopt对应的电压为vopt,vopt运行时系统可用时间为
21)elseArrayA为空集
22)if ArrayB不为空集
23)遍历ArrayB选择记录中MTTFsystem最大值对应的频率f作为系统运行电压fopt,fopt对应的电压为vopt,vopt运行时系统可用时间为
24)end if
其中:ft为时刻t的频率,vt为时刻t时的电压,为时刻t时的处理器利用率,为时刻t时系统的平均无瞬时故障的时间, 为时刻t时系统的平均无永久故障的时间, Q(s,a)为行为值函数,i当前迭代次数,k为迭代次数上限,t为系统所在的时刻;vopt任务集最优执行电压,为任务集在电压为vopt时的系统可用时间,ArrayA、ArrayB为二个不定数组,用来存放迭代过程中的记录,每条记录由这样的键值对构成,ArrayA存放使得的记录,ArrayB存放的记录,每进行一次调整电压产生一条记录;如果ArrayA不为空,遍历ArrayA中的记录,记录中最大值作为 对应的ft作为fopt,ft对应的电压vt作为vopt。如果ArrayA为空,ArrayB不为空,遍历ArrayB中的记录,记录中最大值作为对应的ft作为fopt,ft对应的电压vt作为vopt。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710690737.4A CN107563511B (zh) | 2017-08-14 | 2017-08-14 | 一种实时系统可用时间快速估算与优化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710690737.4A CN107563511B (zh) | 2017-08-14 | 2017-08-14 | 一种实时系统可用时间快速估算与优化方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107563511A true CN107563511A (zh) | 2018-01-09 |
CN107563511B CN107563511B (zh) | 2020-12-22 |
Family
ID=60973827
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710690737.4A Expired - Fee Related CN107563511B (zh) | 2017-08-14 | 2017-08-14 | 一种实时系统可用时间快速估算与优化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107563511B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109636212A (zh) * | 2018-12-19 | 2019-04-16 | 中国科学技术大学 | 作业实际运行时间的预测方法 |
CN110888744A (zh) * | 2019-11-29 | 2020-03-17 | 杭州电子科技大学 | 一种基于工作量自动调优的负载均衡方法 |
CN112965854A (zh) * | 2021-04-16 | 2021-06-15 | 吉林大学 | 一种提升卷积神经网络可靠性的方法、系统及设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070130491A1 (en) * | 2005-12-06 | 2007-06-07 | Mazumder Didarul A | Error detection of digital logic circuits using hierarchical neural networks |
CN101719087A (zh) * | 2009-11-26 | 2010-06-02 | 中国科学院计算技术研究所 | 微处理器可靠性评测方法及其系统 |
CN105955834A (zh) * | 2016-05-12 | 2016-09-21 | 华东师范大学 | 一种权衡系统寿命和软错误的优化系统可用时间的方法 |
CN106355517A (zh) * | 2016-11-07 | 2017-01-25 | 国网重庆市电力公司经济技术研究院 | 一种风电场集电系统可靠性计算方法 |
-
2017
- 2017-08-14 CN CN201710690737.4A patent/CN107563511B/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070130491A1 (en) * | 2005-12-06 | 2007-06-07 | Mazumder Didarul A | Error detection of digital logic circuits using hierarchical neural networks |
CN101719087A (zh) * | 2009-11-26 | 2010-06-02 | 中国科学院计算技术研究所 | 微处理器可靠性评测方法及其系统 |
CN105955834A (zh) * | 2016-05-12 | 2016-09-21 | 华东师范大学 | 一种权衡系统寿命和软错误的优化系统可用时间的方法 |
CN106355517A (zh) * | 2016-11-07 | 2017-01-25 | 国网重庆市电力公司经济技术研究院 | 一种风电场集电系统可靠性计算方法 |
Non-Patent Citations (2)
Title |
---|
MARC RIERA等: "A Detailed Methodology to Compute Soft Error Rates in Advanced Technologies", 《2016 DESIGN, AUTOMATION & TEST IN EUROPE CONFERENCE & EXHIBITION(DATE)》 * |
李瑞莹等: "基于神经网络的故障率预测方法", 《航空学报》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109636212A (zh) * | 2018-12-19 | 2019-04-16 | 中国科学技术大学 | 作业实际运行时间的预测方法 |
CN110888744A (zh) * | 2019-11-29 | 2020-03-17 | 杭州电子科技大学 | 一种基于工作量自动调优的负载均衡方法 |
CN112965854A (zh) * | 2021-04-16 | 2021-06-15 | 吉林大学 | 一种提升卷积神经网络可靠性的方法、系统及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN107563511B (zh) | 2020-12-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110187990B (zh) | 一种基于模式转移的虚拟机混合备用动态可靠性评估方法 | |
Zheng et al. | An accurate GRU-based power time-series prediction approach with selective state updating and stochastic optimization | |
Li et al. | Learning-based modeling and optimization for real-time system availability | |
Bao et al. | Adaptive subset searching-based deep neural network method for structural reliability analysis | |
Chen et al. | NeuCast: Seasonal Neural Forecast of Power Grid Time Series. | |
Nichiforov et al. | Deep learning techniques for load forecasting in large commercial buildings | |
Peng et al. | Multi-step-ahead host load prediction with gru based encoder-decoder in cloud computing | |
CN107563511B (zh) | 一种实时系统可用时间快速估算与优化方法 | |
Zhang et al. | LA-LMRBF: Online and long-term web service QoS forecasting | |
CN110504676A (zh) | 一种基于apso-bp的配电网状态估计方法 | |
Xu et al. | Live gradient compensation for evading stragglers in distributed learning | |
WO2024056051A1 (zh) | 非侵入式柔性负荷聚合特性辨识与优化方法、装置及设备 | |
Tu et al. | Byzantine-robust distributed sparse learning for M-estimation | |
Ruan et al. | How valuable is your data? optimizing client recruitment in federated learning | |
Shen et al. | Host load prediction with bi-directional long short-term memory in cloud computing | |
Li et al. | Resource usage prediction based on BiLSTM-GRU combination model | |
Li et al. | Large-scale comparison and demonstration of continual learning for adaptive data-driven building energy prediction | |
Chen et al. | Physics-guided residual learning for probabilistic power flow analysis | |
Casale et al. | Modelling exogenous variability in cloud deployments | |
He et al. | Towards Utilitarian Online Learning-A Review of Online Algorithms in Open Feature Space. | |
Meng et al. | A reliability optimization framework for public cloud services based on Markov process and hierarchical correlation modelling | |
CN115630316A (zh) | 基于改进长短期记忆网络的超短期风速预测方法 | |
Wen et al. | Learning-based big data sharing incentive in mobile AIGC networks | |
Chen et al. | An improved incomplete AP clustering algorithm based on K nearest neighbours | |
Bi et al. | A spatio-temporal prediction method of wind energy in green cloud data centers |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20201222 |
|
CF01 | Termination of patent right due to non-payment of annual fee |