主权项 |
一种基于时间片利用率的低功耗调频方法,其特征在于该方法的步骤如下:第一步、建立多任务模型对于系统中运行的多任务,以集合T表示:T={t0,t1,…,tn‑1};对于集合T中的任务ti,任务ti已在系统中运行了k个时间片;k个时间片的标记如下:第一个时间片标记为r0,第二个时间片标记为r1,第三个时间片标记为r2,以此类推,第k个时间片标记为rk‑1;第一个时间片r0内的处理器利用率标记为Ur0,第二个时间片r1内的处理器利用率标记为Ur1,第三个时间片r2内的处理器利用率标记为Ur2,以此类推,第k个时间片rk‑1内的处理器利用率标记为Urk‑1;对于处于不同频率下的处理器利用率Ai,按照如下方式进行转化:(1)如果不同频率下的处理器利用率Ai为1.0,则转化为最大频率下的处理器利用率B为1.0;(2)如果不同频率下的处理器利用率Ai小于1.0,则将不同频率下的处理器利用率Ai乘以θ,θ为具有不同频率下的处理器利用率所在的频率/最大频率;第二步、计算任务的预期利用率对于集合T中的任务ti,任务ti的预期利用率U(ti): <mrow> <mi>U</mi> <mrow> <mo>(</mo> <mi>ti</mi> <mo>)</mo> </mrow> <mo>=</mo> <mi>α</mi> <mo>×</mo> <mfrac> <mrow> <munderover> <mi>Σ</mi> <mrow> <mi>i</mi> <mo>=</mo> <mn>0</mn> </mrow> <mrow> <mi>k</mi> <mo>-</mo> <mn>1</mn> <mo>-</mo> <mi>l</mi> </mrow> </munderover> <msub> <mi>Ur</mi> <mi>i</mi> </msub> </mrow> <mrow> <mi>k</mi> <mo>-</mo> <mi>l</mi> </mrow> </mfrac> <mo>+</mo> <mrow> <mo>(</mo> <mn>1</mn> <mo>-</mo> <mi>α</mi> <mo>)</mo> </mrow> <mo>×</mo> <mfrac> <mrow> <munderover> <mi>Σ</mi> <mrow> <mi>i</mi> <mo>=</mo> <mi>k</mi> <mo>-</mo> <mi>l</mi> </mrow> <mrow> <mi>l</mi> <mo>-</mo> <mn>1</mn> </mrow> </munderover> <msub> <mi>Ur</mi> <mi>i</mi> </msub> </mrow> <mi>l</mi> </mfrac> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>1</mn> <mo>)</mo> </mrow> </mrow>式(1)中:l表示最近使用的时间片数量,α表示权重因子,α的范围为[0,1];第三步、建立处理器频率与处理器利用率的映射对于任一处理器P,该处理器P的处理器频率共有e个级别,分别为p0,p1,…,pe‑1;处理器利用率为U(P),将处理器利用率U(P)划分为e个范围,分别为[0,μ1×1/e],(μ1×1/e,μ2×2/e],…,(μe‑1×(e‑1)/e,1],依次记为U(P)0,U(P)1,…,U(P)e‑1;其中:μ1,μ2,…,μe‑1是指任一处理器P对处理器利用率U(P)的划分范围进行调整的系数,μ1<2μ2<3μ3…<(e‑1)μe‑1≤1;则任一处理器P的处理器频率与任一处理器P的处理器利用率U(P)的映射为:将处理器P的处理器利用率U(P)i映射到处理器P的处理器频率pi;第四步、对任务执行时的处理器进行调频根据第二步中计算的任务ti的预期利用率U(ti),对任务ti执行时的处理器进行调频;当任务ti的预期利用率U(ti)为处于U(P)0,U(P)1,…,U(P)e‑1中的U(P)i范围内时,将任务ti下一个时间片内的处理器频率调整为处理器P的处理器频率pi。 |