小组总结报告.docx
- 文档编号:15874126
- 上传时间:2023-07-08
- 格式:DOCX
- 页数:46
- 大小:996.90KB
小组总结报告.docx
《小组总结报告.docx》由会员分享,可在线阅读,更多相关《小组总结报告.docx(46页珍藏版)》请在冰点文库上搜索。
小组总结报告
高性能处理器体系结构
低功耗处理器专题
组长:
刘宝宝SC09011062liubao568@
成员:
林立明SC09011061vllm@
张连法SC09011057sdwszlf@
郭冬冬SC09011053249550148@
吕昕SC09011055lvxin@
中国科学技术大学计算机与信息技术学院
2009.12.13
预留目录
1本组工作整体概览(刘宝宝)
我们小组的最重要的工作是平衡处理器性能和功耗之间的矛盾,也就是说在满足性能要求的基础上来降低功耗,实现功耗和性能的平衡。
1.1对低功耗的需求分析
高性能处理器的低功耗不但在移动设备上有需求,而且在大型数据中心和通用处理器上也是有需求。
首先,下移动设备对低功耗的需求主要是因为移动设备往往依赖于电池,若不对部件的功耗加以控制,设备中电池的电量就会很快消耗殆尽,这样我们制造的移动设备就无法正真正的移动起来。
对移动设备的设计中对功耗要求是一个非常重要的方面,很多情况下甚至不惜牺牲性能来降低功耗。
其次,在大型数据中心或通用处理器上我们并不关心设备的耗能问题,因为我们的设备不依赖于电池,我们对大型数据中心和通用处理器的最要期望是性能,在这里并不太关心功耗的问题。
但是,在大型数据中心和通用处理器中我们有一个问题是必须面对的,温度问题。
我们的大型数据中心天天执行着大量繁重计算任务,如果我们的数据中心热点像个火炉,不仅会影响到系统的稳定性和设备的使用寿命,同时温度的上升就意味着电子器件的物体特性变化伴随而来的就是性能的折损。
另外,在通用处理器中最严重的问题是芯片局部温度过高,引起整体新能下降,甚至引起芯片损坏。
对通用处理器我们必须控制局部温度上升也就是必须能够能好的控制局部功耗。
由此,无论是移动设备的处理器,还是大型数据中心和通用处理器我们都应该,对芯片的能耗加以控制,以满足系统运行环境的需求。
1.2低功耗处理器设计的理论基础
1.2.1从能量消耗和门延迟公式来分析电压、功耗和性能间的关系
在处理器的能能量消耗
和门延迟
上有公式:
(1)
(2)
其中f为频率,Cload为数据的加载能力、Vdd是供电电压、Vth是阀值电压(对每个特定的电子器件一般是一个常数)。
是一个因子它的值他的值和电压有关一般在1.3-1.5之间,这里我们作为常数来考虑。
(1)式中,可以看出降低功耗的最有效的方法是降低供电电压。
(2)式中,看到门延迟和供电电压反相关,所以降低了供电电压就增大了门延迟,也就意味着降低了部件的时钟频率处理器的性能下降。
由此,我们在低功耗处理器的设计中就要注意到:
电压的点降低必然会降低处理器的功耗和时钟频率,也就是说性能是和供电电压成正相关。
这些表面我们通过控制电压来降低处理器的功耗的同时必然会降低性能。
这就要求我们在设计低功耗处理器的过程中兼顾性能和功耗两者之间的权衡。
1.2.2处理器中的两种功耗:
动态功耗和静态功耗
动态功耗:
Pdynamic=k*C*V
*F*SA(3)
静态功耗:
Pleakage=Ileakage*V*A(4)
动态功耗Pdynamic是由处理器的动作而引起的,其中处理器的动作包括位的翻转,寄存器值的变化等等,其功耗消耗是由于电容的充放电和电路中电流的变化。
静态功耗,又称漏电功耗。
静态功耗的产生是由于晶体管的物理特性决定的,我们实际中使用的晶体管,并不会像物理学中理想的半导体模型一样,在没有达到门槛电压(thresholdvoltage)时没有电流通过,事实上的晶体管存在这样的漏电电流。
这就决定了我们的处理器中的有一部分白白耗费的功耗。
动态功耗的降低的主要方案:
由(3)可以很明显的看出动态处理器的动态功耗与供电电压正相关,这里给我们一个提示:
1可以通过控制供电电压调节处理器在这一部分的功耗,但会损失性能;
②由于这一部分的功耗产生于处理器的动作,我们可以通过优化程序的编译减少冗余表达式和不必要的寄存器的反转来降低功耗。
这种方法不仅可以降低功耗而且还能提高性能。
1.2.3浅议能量和功率
有公式:
W=PT(5)
其中,W是在时间T内消耗的能量,P是功率,T是时间。
区分这两个概念是为了搞清楚一个问题:
降低能量消耗还是降低功率消耗?
能量W是处理器消耗的能量,它是一个耗费电能多少的指标,这个指标在移动设备上是重要的,因为移动设备所配备的电池能提供的电能总量是一个定值,我们需要控制处理器总的用电量才能达到保证移动设备的长时间运行的目标。
功率P是单位时间内一个电子部件(处理器或处理器的某一部分)所用的电能的多少,是一个瞬时值,在某一定的时刻,我们处理器上的各个功能部件的功率是不同的,用这个值可以衡量每个部件在某一时刻的能力使用率。
能量W的指标对我们从整体上的低功耗设计来减少所需能量的多少是一个关键,而功率P对我们来衡量每个局部在一定时刻或时间段内的能力能量耗费是重要的。
在移动设备中我们更关心整个系统运转整体对能量W的消耗情况,而在大型计算机或通用芯片上我们关系局部温度的过高这里我们更关心的是局部的功率P过高。
所以移动设备在努力降低整体能耗W,而通用芯片需要平衡负载(可以通过局部的功率P来衡量某时刻局部的负载大小以及是否会使得局部温度急剧升高)使得芯片的局部温度不至于过高。
1.3实现低功耗的解决方案概述
现有的技术对处理器耗能的方方面面来降低处理器的功耗。
这里主要的方法有:
低电压技术、全局功耗管理技术、
1.3.1低电压技术
在公式
(1)、(3)和(4)中,可以清楚的看出随着电压的降低处理器的功耗就会相应的下降,其中的(3)式反应来动态功耗的降低,(4)式反映了静态功耗的降低。
在下面图1中的试验数据也正好反映了这一点:
处理器在相同频率(即相同速度)状态的工作模式下,降低电压能在很大程度上降低功耗。
图1:
采用Mobilize单元库得到的速度与功耗的关系
在图中我们可以看到,同样用150MHZ的速度,1.2V的每MHZ功耗为46uW,1.0V为38uW,0.8V只为22uW.可以看到,低电压技术可以极大的提高功耗的利用率。
同时在低电压技术中也应该从图1中看到一点,0.8V模式下的处理器频率可能的进一步提高是有难度的。
换句话说,保证高性能的同时对电压也是有要求的,例如在图中200MHz以上的频率,只有当电压在1.2V的时候才能达到。
这里就需要我们权衡,当我们只需要150MHz的速度的时候我们首选的就是0.8V的电压,在这个工作电压下用可以用更少的功耗来达到相同的性能,当然如果我们需啊哟175MHz的工作频率我们就需要相应的把电压设置到1.0V,可以满足性能的要求而功耗比1.2V要低。
由此,低电压技术是一项实现低功耗处理器的重要方法,可以在比较好的降低功耗的同时保证我们所需的性能,达到性能和功耗的良好平衡。
1.3.2全局功耗管理技术
在多核系统中可以应用全局功耗管理技术来降低功耗,同时保证性能到到要求。
每个核都有多种功耗模式,这些模式由控制器根据任务独立设定。
分层的全局功耗管理概念结构如下图:
操作系统、全局管理部件、底层处理器核三个层次之间进行交互,从而确定每一个核的工作模式。
图2全局功耗管理的系统结构
采用的是每个核内部的控制,一个全局管理部件,分为两层。
全局管理部件周期性地检测每个核的功耗、IPC,然后设置所有核下一周期的模式。
实质上这是一个基于多核处理器工作状态的反馈系统,当检测到系统需要高性能是就让更多的处理器处于高功耗高性能状态以满足性能要求,但是在系统的空闲期,我们可以改变处理器的功耗模式让处理器处于低功耗状态来降低功耗。
对于多核系统这是一种很好的解决方案。
1.3.3在片上网络拓扑结构中降低功耗
网络拓扑结构和工艺技术是影响片上网络功耗的两个主要因素。
这里可以用平均的分组传送能量Efli作为公制来评估网络的功耗效率,并基于工艺技术,构想出一个对多种拓扑结构都可用的统一分析模型,在数量上比较它们的功耗效率。
这里讨论的拓扑结构有高维meshes/tori,分等级的meshes/tori和高速立方体。
三种拓扑结构的比较是:
分等级tori和高速立方体比高维tori有更低分组传输功耗。
只需要知道网络规模,工艺技术和网络参数,就可以得出功耗效率最高的拓扑模型。
1.3.4由编译器的软件方法来降低功耗。
动态功耗的产生主要是由于处理器的执行动作引起的能量消耗,由此可以优化编译。
编译的优化可以减少:
冗余计算、位的反转、减少访存次和增加cache的命中率,这些都不但可以降低功耗,同时还能提升性能。
2基于关键路径的异构处理单元相结合的低功耗体系结构(刘宝宝)
学生:
刘宝宝学号:
SC09011062
原文题目:
InvestigatingHeterogeneousCombinationofFunctionalUnitsforaCriticality–basedLow–powerProcessorArchitecture
作者:
AkihiroChiyonobuToshinoriSato
出处:
DepartmentofArtificialIntelligenceCenterforMicroelectronicSystemsKyushuInstituteofTechnology
2.1本文完成的核心工作
在不违反指令间的相互制约关系的情况下,指令可以乱序执行,而决定程序执行序列的关系最主要的是数据依赖。
最长的数据依赖路径的执行快慢将决定着整个程序的执行速度。
不在这条最长路径上的路径上的指令可以延迟其执行完毕的时间,而不影响整体性能,所以我们可以让这些不在这条路径上的指令在慢速部件上执行,而不影响性能。
在程序执行的关键路径预测技术的基础上,本文最核心的工作是:
由试验数据分析出基于关键路径的异构处理单元相结合的低功耗体系结构中,快速处理单元和慢速处理器单元的比例是多少的情况下最优,也就是达到功耗的降低的同时,保证一定的性能。
2.2基于关键路径的指令调度策略
现在可以通过软硬件的方法我们可以由指令的乱序执行或并行性来优化指令的执行序列,但是许多指令之间往往包含着数据依赖,例如后一条指令要用到前一条指令的结果或是等待前一条指令对寄存器的写回。
另外,指令的乱序执行和并行性的时会受到数据依赖的限制。
处理器必须按照指令之间数据依赖关系来执行指令。
我们可以用一个有向图来表示程序之间执行的数据依赖关系和执行序列。
有向图中的每个节点代表一条指令,每条有向边代表后一条指令依赖于前一条指令的执行前一条指令的执行是后一条执行的前提,看下面图3中就是一个简单程序的表示。
图3指令间的数据依赖关系和关键路径
我们称这样的图为数据流图。
由此我们定义程序的关键路径为在数据流图中最长的一条指令节点路径。
假设图1中每个节点对应的指令的执行时间都相同为1,图中最长的数据流执行路径是阴影节点所组成的路径,这条路径也是这个程序的关键路径,也就是说这五个节点决定了这个程序执行的时间是五个时间单位。
另外,我们应该很明显的看出来,只有提高阴影节点的执行时间才能真正的提高性能,而不在关键路径上的指令执行速度慢一些并不影响程序执行的整体性能,例如图1中的例子,我们让I:
2节点的指令有一个慢速的执行单元来执行即使速度减半为2也不会影响,整体性能。
基于程序执行的数据流依赖的关键路径的分析,我们知道每个程序除了关键路径上的一些执行的速度不能影响整体性能不能用慢速部件执行外,其余的一些指令可以用慢速部件执行而不影响性能,那么我们主要研究下一个拥有6个功能部件的处理器中慢速部件和快速部件的比例是多少时,我们可以达到节能而不过多的损失性能。
2.3关键路径预测技术
为了判断每条指令是否是在关键路径上的指令,我们应用关键路径预测技术。
近些年来为了提高指令的调度性能,关键指令的预测技术有很大的发展。
其中参考文献的[4-9]都是关键路径的预测技术。
在参考文献[9]中描述了一种关键路径预测的原理,每当执行到这个指令的时候都根据历史记录中此指令是否是关键指令来判断。
它的主要工作元件是一个关键路径历史记录表(CPHT),这个表有很多的计数器组成它们根据PC中的值来响应的进行增减。
每个指令对应与相应的计数器,每当关键路径预测分析器判断这条指令在关键路径上相应的计数器就增加1,执行到的指令被判断不在关键路径上的话就把相应的计数器减1。
最终在每个指令被调度时,当其对应的计数器的值超过了一个指定的临界值,就认为这个指令在关键路径上,处理器就认为提高这条指令的执行效率是必要的能提高性能。
否则,当执行到这个指令时,它的值没有超过临界值的话,就认为它不是一个关键路径上的指令,可以用慢速部件来执行这条指令。
判定规则的具体实现和指定的临界值的大小还有关键路径历史记录表的位宽将影响对关键路径的判定。
为了在执行中判定每条指令是否是在关键路径上参考文献[9]提出几种方案。
在文献[9]中提出的关键路径分析仅仅应用于较短的范围内的局部分析。
我们假定指令的关键性预测仅仅与指令之间的数据依赖关系和预测分析的历史数据和真正的关键路径之间的联系的正确性。
我们结合三种预测器(GCPH-type、GBH-type,和BOTH-type)的优点提出一种预测方案。
为了更好的应用关键路径历史和分支预测历史用的相关信息,我们在文献[9]提出的关键路径历史记录表中增加了两个寄存器,一个移位寄存器用来保存着全局的分支预测记录结果(GBH),这个移位寄存器用分支预测器使用和管理,另一个移位寄存器保存用来保存关键路径历史预测信息。
这些移位寄存器用来保存着全局历史信息,虽然由于表项有限的缘故,最近的一条指令的信息必然要替换掉最老的一条历史信息,我们依然命名它为全局关键路径预测表(GCPH),用移位寄存器中的每一位来表明其所对应指令在最近一次调用中是否是关键指令,这些信息每次都被插入到移位寄存器的头部,而保存在移位寄存器底部的信息都被移去。
GCPH-type预测器使用GCPH移位寄存器和PC来进行关键路径的预测,GBH-type预测器使用GBH和PC来进行分支预测;BOTH-type预测器结合起来进行预测关键路径,这种预测分析器原理图在图4,这样设计基于我们认为考虑的相关信息可以改善关键路径的预测结果。
图4:
BOTH预测器
2.4最佳的功能单元部件组合方案
组合一些具有不同性能和功耗的功能单元在一起来调度使用,是我们进行低功耗设计的关键点。
这是因为尽量的让更多的能效高的处理单元代替高耗能的处理单元可以在保证性能的基础上达到节能的目标。
因此,我们下面来考察不同处理器的最好的组合方式。
2.5仿真和对试验结果的评价
2.5.1仿真环境和相关的配置
为了研究什么样的功能部件配置组合是能效最佳的,我们需要进行仿真研究。
我们使用SimpleScalar/PISA工具集设计了一个时序模拟器,我们文章中的历史预测器中那个拥有2000个项,这是一个6位的状态映射表,当一条指令被预测出是关键指令时,它所对应的计数值加8,否则就减一。
这里计数器的临界值被设置为8,保存在GCPH中的关键路径的历史长度设置为8个指令
快速执行单元每执行一条指令需要一个时钟周期,然而慢速的执行单元每执行一条指令需要用两条指令周期,为快速的执行单元提供1.1V的供电电压,为慢速的执行单元提供0.7V的供电电压。
为了更好的看出最佳的功能部件组合情况,我们让快速部件的个数从6减少到0。
我们使用了一段特定的程序段SPEC2000CINT来进行仿真,对于每个程序来说前100万条指令被跳过,仅仅接下来的10亿条指令进行真正的执行。
我不不考虑空操作。
2.5.2试验结果
图5Per-address类型关键路径预测器下执行结果
图6GCPH类型关键路径预测器下执行结果
图7GBH类型关键路径预测器下执行结果
图8BOTH类型关键路径预测器下执行结果
图5-8显示了我们的仿真结果,每组图中的左半部份的图显示了处理器的整体性能,而右半部份显示了处理器的整体功耗。
对于性能来说当然是越高越好,然而对于功耗来说当然是越少越节能,消耗电量越少,我们从对比中看出那中组合最好,nfast/mslow表示n个快速部件m个慢速部件的组合。
在性能上:
当快速部件减少的同时性能在降低,然而功耗也在相应的上升;我们进一步可以发现在2fast/4slow、3fast/3slow、4fast/2slow和5fast/1slow,这些组合中性能是基本相同的;再来看一下在功耗上,但是2fast/4slow、3fast/3slow、4fast/2slow和5fast/1slow,它们的功耗逐渐上升,2fast/4slow功耗却有大约比6fast/0slow低15%,但当快速部件少于2的时候性能明显下降。
2.5.3从试验中得到的结论
这里可以得到一个结论:
2fast/4slow、3fast/3slow、4fast/2slow和5fast/1slow,这几种组合中的性能基本相当,但是2fast/4slow的功耗最优,所以2fast/4slow的比例是最优结果。
2.6问题讨论
问题一:
试验结果的数据从图5到图8的主要区别在哪里?
答:
图5到图8所的的不同数据主要是基于的关键路径预测其不同。
其中图5到图8使用的关键路径预测其分别为:
Per-address类型、GCPH类型、GBH类型和BOTH类型的关键路径预测器
问题二:
为什么要比较几种不同关键路径预测器下的执行结果,它对试验有什么重要的作用吗?
答:
关键路径预测器所预测的结果正确率越高处理器的性能就发挥的越好,因为通过它的判断才能分辨哪些指令是需要快速执行的,只有正确命中关键路径,才能真正的把关键路径上的指令放到高速的处理器上。
这样才能真正的达到降低整体功耗的同时没有损失性能。
问题三:
为什么在从6fast/0slow到5fast/1slow的变化中功耗急剧的增加,而性能急剧下降?
答:
慢速部件的添加快速部件的减少本就会使得性能有一定的下降,同时在从纯粹的快速执行单元到快速单元和慢速单元的混合的变化中,硬件上需要添加关键路径预测器件,这个功能和部件的加入将会使得功耗的急剧上升。
2.7我对本文的思考
首先,文中仅仅讨论了6核的情况,在目前走向多核和众核的趋势下我们应该进一步深入讨论在更多的核的情况下是否像6核那样在快速计算单元和慢速计算单元的比是1:
2的情况下最优
其次,作者综合以往集中关键路径预测机制的工作自己提出了一种新的关键路径预测器BOTH-type以求更加精确的预测程序执行的关键路径,但是我们从试验的结果可以看出,图8的功耗上升了,而性能并没有改善。
由此我认为作者提出的关键路径预测其增加了硬件开销而是的功耗上升,性能上也没有改善,可见关键路径预测机制BOTH-type不是很好。
参考文献
[1]D.Burger,T.M.Austin:
“TheSimpleScalarToolSet,Version2.0”,TechnicalReportCS-TR-97-1342,ComputerScienceDepartment,UniversityofWisconsinMadison,June1997.
[2]A.Chiyonobu,T.Sato,I.Arita:
“AnEvaluationofCriticalPathPredictorsforLowPowerProcessorArchitecture”,TransactionsofIEICEC,Vol.J86-C,No.8,August2003(inJapanese).
[3]A.Chiyonobu,T.Sato:
“OnDynamicIdentificationofInstructionCriticality”,15thSummerUnitedWorkshoponParallel,Distributed,andCooperativeProcessing,August2003(inJapanese).
[4]B.Fileds,S.Rubin,R.Blodik:
“FocusingProcessorPoliciesviaCritical-PathPrediction”,28thInternationalSymposiumonComputerArchitecture,July2001.
[5]R.Kobayashi,H.Ando,T.Shimada:
“Instruction-IssueMechanismforaClusteredSuperscalarProcessorFocusingonaCriticalPathinaDataFlowGraph”,13thJointSymposiumonParallelProcessing,June2001(inJapanese).
[6]M.Levy:
“SAMSUNGTwistsARMPast1GHz”,InformationQuarterly,vol.1,no.1,2002.
[7]T.Sato,T.Koushiro,A.Chiyonobu,I,Arita:
“PowerandPerformanceFittinginNanometerDesign”,5thInternationalWorkshoponInnovativeArchitectureforFutureGenerationHigh-PerformanceProcessorsandSystems,January2002.
[8]J.S.Seng,E.S.Tune,D.M.Tullsen:
“ReducingPowerwithDynamicCriticalPathInformation”,34thInternationalSymposiumonMicroarchitecture,December2001.
[9]E.Tune,D.Liang,D.M.Tullsen,B.Calder:
“DynamicPredictionofCriticalPathInstructions”,7thInternationalSymposiumonHighPerformanceComputerArchitecture,January2001.
3有效的多核全局功耗管理策略的分析-给定功耗下实现最优性能(张连法)
学生:
张连法学号:
SC09011057
原文题目:
AnAnalysisofEfficientMulti-CoreGlobalPowerManagementPolicies:
MaximizingPerformanceforaGivenPowerBudget
作者:
CanturkIsci.,AlperBuyuktosunoglu.
出处:
The39thAnnualIEEE/ACMInternationalSymposiumonMicroarchitecture
3.1引言
指令并行的限制和功耗散热问题使高性能处理器走进了多核时代。
但是在一些应用中对单核性能的提高依然存在,且在多核系统
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 小组 总结报告
![提示](https://static.bingdoc.com/images/bang_tan.gif)