CPU节能论文Word文档下载推荐.docx
《CPU节能论文Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《CPU节能论文Word文档下载推荐.docx(19页珍藏版)》请在冰点文库上搜索。
在该时刻的工作率有关,工作率越大,能耗越高。
而工作率又影响设备的性能,决定程序的反应时间和完成工作所需的时间。
当然不同情况下,侧重有所不同,就会出现两种情况。
地一种是有时候我们是希望用最小的能耗去解决尽可能多的任务,而时间的长短则不与太多的计较,只要是在任务规定的时间内完成即可,另外一种情况是有时我们则希望用尽可能少的时间去解决多的问题,而耗能则是只要不超过上限。
就任务而言,有的是限制在一定的时间里必须完成的,就是说从任务一到CPU开始计时,在一段时间里必须完成,而有的则是没有时间限制的。
现在是有一批它们到达CPU的时间不同,但是都是必须在规定的时间内完成。
但是我们希望是消耗尽可能少的能量,只要是在规定的时间段内完成,在这个时间段内有时中止也没关系,此时我们应该怎样来处理。
任务的序号、到达时间、截止时间以及所需运算单位数下如图。
任务序号
1
2
3
4
5
6
7
8
9
10
11
到达时间
截止时间
所需运算单位数(百万
12
我们都知道每一个CPU是有一个它所能处理的最多的运算单位数,我们所研究的CPU所能处理的最多的运算数是每秒10百万。
如果假设任务只有到达时刻,没有截止时刻,完成这些任务所消耗的能量有一个上限。
要求在耗用能量不超过上限的条件下,使这些任务的流程时间之和尽可能小,此时我们应该怎样解决。
三、模型假设
1.处理这些任务的电脑有一个高转换效率的机箱电源
2.TDP功耗低于70w
3.处理这些任务时,cpu所处的温度相同
4.所有任务到达计算机的速度相同
5.Cpu的运行环境变化不大。
四、符号说明
x表示某一时刻CPU正在工作的任务数。
xi表示第i(i=1,2,……11)个任务
Z表示电脑除去CPU,TDP外的能耗,忽略其大小的变化,设其为一定值。
Q表示计算机的总能耗
Y表示cpu的除去TDP的功耗
q(x,t2)~时刻t2单位时间内通过cpu完成的单位数.
ρ(x,t2)表示时刻t2进入CPU的任务数。
u(x,t2)表示某一任务在时刻t2通过CPU时完成该任务的速度
to表示计算机在对各工作的反应时间。
t1~任务进入CPU的时刻
t2~任务出CPU的时刻
=10百万
五、问题的分析
首先我们定义:
TDP是TotalDissipatedPower的缩写,中文翻译为“热设计功耗”,是反应一颗处理器热量释放的指标,它的含义是当处理器达到负荷最大的时候,释放出的热量,单位为瓦(W)。
TDP是指CPU电流热效应以及其他形式产生的热能,他们均以热的形式释放。
对于一个系列的CPU,英特尔一般给出一个整体的TDP值,不一大批不同型号的CPU都通用一个TDP值。
提供的散热设计功耗(TDP)值都为65W。
且只有将来最高性能的型号在满负荷的时候可能会达到这个值。
所以我们可以预计,TDP的值在使用过程中会小于65w。
性能好节能效果好的CPU,就可以在更短的时间内完成任务,依次进入等待,空闲,休眠,深度休眠等节能状态。
例如,同样一段高清影片的压缩,高性能的CPU可以在5分钟完成,差的CPU需要10分钟完成。
提前完成工作的CPU可以做别的工作,或者在剩下的5分钟处于低负荷的运行状态——CPU利用率低,系统功耗就小,甚至进入休眠。
对于需要10分钟完成的CPU,后5分钟还是需要让CPU处于高负荷的运行状态,整个系统都需要处于相对高负荷的状态,由此可见能耗是无法和高性能的CPU相比的。
(1)问题一的分析
对于问题一,我们采用了交通流的基本函数来求解时刻t单位时间内通过cpu完成的单位数及时刻t内通过CPU任务数,从而确定CPU
如何处理一批任务的方案,并且耗用的能量最小。
因为任务进入到CPU的时候就象是一辆辆的车开始行使在公路上,并且它们开始行使的时间会不同,到达的目的地也会有所
2
不同,于是耗时也就会不一样,然而,每一辆的行使速度不同,并且任何一条公路在一定宽度的条件下所能允许通过的车辆数也是有限的。
这就相当于CPU允许工作的最大的运算数。
而车辆到达目的地的时间和刚开始出发是的时间只差就相当于各任务完成所需的时间。
同一时刻出发的车辆会有所不同,在同一地点所停留的时间也会有所不同。
但是每一条公路都有一个不准超速的速度。
于是我们可以借用交通流的模型。
(2)问题二的分析
对于问题二,我们同样采用线性规划的模型,在问题一的基础上只是没有截止时间。
从第一问中我们知道了再每一秒内各任务所完成的任务数,并且这要的完成方法是最节能的。
但是第二问对能量的消耗没有太多的要求,只要不超过上限就行。
从耗能的计算公式Z=cuf可知,只要每一秒的CPU的运行速度不超过最大速度即可,即f<
=10百万就可以了。
要想时间最小。
我们每一秒都可以用最大的速度去运行各任务。
六、模型的建立与求解
第一问的求解
(1)交通流基本函数的建立
背景与对象
公路上行驶的一辆接一辆的汽车队伍.
将车队类比作连续的流体,称为交通流(车流).
描述,分析每一时刻通过公路上每一点的交通流的流量,速度,密度之间的关系.
我们可以类比为cpu如何处理几批不同的任务,分析每一时刻通过cpu上运算单位数与完成单位数及在每一时刻完成任务的速度之间的关系。
交通流的基本函数
cpu运算的方向是单向的
基本关系:
q(x,t)=u(x,t)ρ(x,t)
单位时间内通过的单位数等于cpu运算速度乘以单位长度内的所到达的单位数
q(x,t)=u(x,t)ρ(x,t)
=0,u=um(最大值);
=m(最大值),u=0.
速度u随着密度的增加而减少,设u是的线性函数,
平衡状态(所有任务到达的速度相同,cpu处理单位数的各处密度相同)下u,和q的关系.
3
最大单位时间内通过cpu完成的单位数在a点,斜率为零的点=*=m/2,q=qm(最大值)
在这点
所以当
时q取的最大值,这时
连续交通流方程流量q(x,t)密度(x,t)速度u(x,t)
关于q(x,t),(x,t),u(x,t)的连续、可微、解析性假设
推出
已知初始密度f(x)
一阶拟线性偏微分方程用特征方程和首次积分法求解
4
x(t)是一族直线~特征线特征线的斜率随x0变化
沿每条特征线x(t),(x,t)是常数f(x0)
斜率k=1/(f(x0))
讨论q()f(x)给定后解(x,t,)的性质
特征线
,
t(x)的斜率
k=1/(f(x0))
*=m/2,(*)=0,k
1<
*,
(1)>
0,k>
2>
*,
(2)<
0,k<
按初始密度f(x)是x的减函数或增函数讨论解(x,t)的性质
分析好(x,t)的性质后我们来讨论处理器的功耗计算公式。
(2)处理器的功耗计算公式
根据参考文献[2]可知
处理器的功耗与TDP两者的关系可以用下面公式概括:
处理器的功耗=实际消耗功耗+TDP。
实际消耗功耗是处理器各个功能单元正常工作消耗的电能,TDP是电流热效应以及其他形式产生的热能,他们均以热的形式释放
而CPU的功耗的计算公式:
PD=knC*V2*F。
在这里,PD表示CPU功耗,n表示CPU的晶体管总数,C表示每个晶体管的容量,V表示工作电压,F表示工作频率,k则是表示一个时钟周期内每个晶体管改变状态的能源消耗系数。
由这个公式可以看出,由于CPU内建的晶体管数量和单个晶体管的容量是制造时就决定了的,不能更改,要降低CPU的功耗,就只能在调节CPU的工作频率和工作电压上想办法了,所以我们把knC看为一个已知的系数H,在模型讨论时可以不考虑。
CPU消耗的电能,最终转化为热能。
我们可以认为,在一定时间内,cpu耗电=cpu产生的热量。
CPU发热量越大,说明耗电越多。
(能量守恒定律:
能量既不会凭空产生,也不会凭空消失,它只能从一种形式转化为别的形式,或者从一个物体转移到别的物体,在转化或转移的过程中其总量不变。
)
以下我们研究电压与cpu功率的关系,根据参考文献[1]我们得出以下的测试结果,在流经cpu的不同的核心电压,测试时对cpu的实际工作频率有没有较大的影响。
我们采用工作环境一样的软件系统:
操作系统中文Windows98SE,DirectX8.0,测试软件FreshDiagnoseV2.75中的ProcessorBenchmark。
下面用图示来显示结果。
PentiumMMX166,核心电压3.0V,测试时实际工作频率167MHz
PentiumMMX166,核心电压2.7V,测试时实际工作频率169MHz
6
K6-2550,核心电压2.1V,测试时实际工作频率551MHz
K6-2550,核心电压2.7V,测试时实际工作频率552MHz
可以看出,无论K6-2550还是PentiumMMX166,在不同的电压下各项测试值没
有明显差异。
所以我们可以得出,不同的工作电压或者可以说是变化微小的流经cpu的工作电压对cpu的工作频率及工作时产生的能耗没有明显的作用。
因为对于不同的任务、不同的运算单位数,cpu的核心电压也会不同,但是核心电压的变化也比较小,而根据以上介绍的知识,我们可以将这些变化忽略不计,只考虑工作效率对cpu能耗的影响。
从已有知识,我们可以设立出如下的模型。
(3)线性规划模型
根据交通流方程模型再以总功耗最小为目标建立整数规划模型,求解中用连续松弛把该问题转化为线性规划模型,使解题难度降低。
在满足约束条件的情况,使cpu反应时间最小,且寄生电容和工作电压对电脑功耗影响不大的前提下,通过变量的取整改进,使逐渐逼近最优解,。
运用目标规划方法建立模型,然后对目标规划进行线性转换,利用m软件求解。
计算机的总功耗为Q=MinY=
+Z+TDP
而根据以上所列的条件,TDP,、Z、c都为定值,所以我们只考虑Q
目标函数为MinZ=
各种等式约束和不等式约束如下列出
q=V
(
0<
0.25
*
=k(k,c,u均为常数)
经过运算可知
当第一批任务到达时,cpu的速度在0~1秒时达到3百万每秒,第2批任务是1~2
秒完成的,速度是6百万每秒,任务3在1~2秒时完成了2百万,2~3秒完成了7百万,任务4在3~4时速度为6百万每秒,任务5在4~5秒完成了6百万,在5~6秒时速度都达到了4百万每秒,6~7秒时速度都达到了2百万每秒,任务6在5~6秒时速度为3百万每秒,6~7秒时速度也为3百万每秒,任务7是在8~9秒时完成的,速度为3百万每秒,任务8在到达时也就是7~8秒时速度就达到了9百万每秒,任务9在8~9秒时速度为6百万每秒,任务10在9~10秒时速度为3百万每秒,任务11在6~7秒时完成了1百万每秒,在9~10完成2百万每秒。
这样完成的任务,使得cpu的功耗最小。
下面我以表格的形式表达出来。
ti
fi
xi
0~1
1~2
2~3
3~4
4~5
5~6
6~7
7~8
8~9
9~10
根据上面的表格,我们可以算出Q=MinY=
第二问的求解
对第二问而言,因为题目没有明确的提出是哪一批任务,所以我们仍然采用第一问的任务,但是没有截止时间。
从第一问中我们知道了在每一秒内各任务所完成的任务数,并且这要的完成方法是最节能的。
从耗能的计算公式
可知,只要每一秒的CPU的运行速度不超过最大速度即可,即f<
第一个任务是可以单独把它在CPU中运行的是计算出来就是
x1/Vmax=3/10=0.3
就其它的任务从表中我们可以重新安排是的任务经过CPU工作的时间最短。
9
所需运行的单位数
15
在第二秒开始,CPU是不能把完成的,必须分流,至少要分出5个单位数,由于我们希望是时间最少,如果做到每一次都是时间最少,最后的总时间肯定是最少的。
于是我们要用最大的CPU运算数尽可能多的解决任务分配来的运算数,因此,必须分出5个单位数到第三秒计算。
这样一来,第三秒就有11个单位数必须得计算,同理必须得分1个单位给第三秒计算,都是这样一个个推下去最后计算出总的时间,过程如下:
就这样前一秒赚到下一秒,这其中会出现第四、七、十秒只要计算一个单位,
第九秒计算三个单位,而2,3,4,5,6,7,这六秒则计算机的CPU是一直在运行的。
依此类推下去,我们可以运算出,解决题目已知问题的所以
通过运算我们可以得出最短时间是
0T=6+0.3+2*1/10+2/10=6.7(秒)
5图中的箭头边的数表示从前一秒传到下一秒的运算数。
从上到下表示
1第一秒开始到第九秒,里面的数表示在这一秒到达的任务数。
2
七、结果分析
用交通流的模型来运算每个经过cpu的速度,在这其中采用长微分的方法,计算出CPU在各时刻的速度表达式,而对于电容和电压则可以看成是一个稳定的值,进而就转化为了只与速度有关。
在通过进一步的优化:
即目标函数的确定及各种从题目已知条件挖掘出来的各种线性关系构造的线性规划模型。
用交通流的模型找到速度的函数,然后用线性规划去求解能耗最小。
这种模型比较新颖,
且求出的速度和能耗都是比较符合已知条件的。
第二问则比较简单,主要用分流的形式,用最大的速度去求解,这里对能耗的考虑是非常少的,如果可以。
最好是找到找到能耗低,耗时又少的方法。
八、参考文献
[1]作者:
柳随风再论《CPU核心电压对性能的影响》天极硬件频道
[2]lanqing_168CPU超频后功耗计算&
CPU功耗的简单测算DIY烧友会
[3]pucci2CPU:
核心电压ZOL报价
[4]姜启源谢金星叶俊编数学模型(第三版)北京高等教育出版社2003年8月红绿灯下的交通流
[5]TDP百科名片XX百科
[6]王高雄周之铭王寿松编常微分方程(第三版)北京高等教育出版社2006年6月微分方程的初等解法
[7]数学科学分享Matlab中的求解线性规划的程序科学网论坛
附录
11