1、国防科技大学计算机学院国防科技大学计算机学院主讲人:主讲人:教授教授本章内容本章内容三项性能指标:吞吐率、加速比和效率三项性能指标:吞吐率、加速比和效率1.1.吞吐率吞吐率是衡量流水线速度的重要指标是衡量流水线速度的重要指标u吞吐率吞吐率是指单位时间内流水线所完成的任务数或是指单位时间内流水线所完成的任务数或输出结果的数量。输出结果的数量。u最大吞吐率最大吞吐率TPTPmaxmax是指流水线在达到稳定状态后是指流水线在达到稳定状态后所得到的吞吐率。所得到的吞吐率。u设流水线由设流水线由mm段组成,完成段组成,完成n n个任务的吞吐率称个任务的吞吐率称为为实际吞吐率实际吞吐率,记作,记作TPTP
2、。(1 1)最大吞吐率)最大吞吐率u假设流水线各段的时间相等,均为假设流水线各段的时间相等,均为t t0 0,则:,则:TPTPmaxmax=1/=1/t t0 0u假设流水线各段时间不等,第假设流水线各段时间不等,第i i段时间为段时间为t ti i ,则:,则:TPTPmaxmax=1/max=1/maxt ti i 最大吞吐率取决于流水线中最慢一段所需的时最大吞吐率取决于流水线中最慢一段所需的时间,该段成为流水线的瓶颈间,该段成为流水线的瓶颈 消除瓶颈的方法消除瓶颈的方法 细分瓶颈段细分瓶颈段 重复设置瓶颈段重复设置瓶颈段(时空图时空图)(2 2)实际吞吐率)实际吞吐率u若各段时间相等(
3、假设均为若各段时间相等(假设均为t t0 0),则完成时间),则完成时间T T流水流水 =m=mt t0 0+(n-1)+(n-1)t t0 0(说明说明)时空图时空图TP TP T T流水流水n nm mt t0 0(n n)t t0 0n n(1(1 )t t0 0 m m1 11 1TPTPmaxmaxn n1 1n nm m1 1实际吞吐率实际吞吐率u若各段时间不等(假设第若各段时间不等(假设第i i段为段为t ti i),则完成时间),则完成时间时空图时空图T T=t ti i+(n-1)+(n-1)t tj j这里,这里,t tj j=max=maxt ti i i=1i=1m m
4、TP TP t ti i(n n1)1)t tj jmmi=1i=1n n实际吞吐率实际吞吐率2.2.加速比加速比u加速比加速比是指流水线速度与等功能的非流水线速度是指流水线速度与等功能的非流水线速度之比。之比。u根据定义可知,加速比根据定义可知,加速比S S=T T非非流水流水/T T流水流水u若流水线为若流水线为mm段,每段时间均为段,每段时间均为t t0 0,则,则T T非流水非流水 =nm=nmt t0 0,T T流水流水 =m=mt t0 0 +(n-1)+(n-1)t t0 0 S S mnmnmmn n1 1mmn n1 1 mm1 13.3.效率效率u效率效率指流水线的设备利用
5、率。指流水线的设备利用率。u由于流水线有由于流水线有通过时间和排空时间通过时间和排空时间,所以流水线,所以流水线的各段并非一直满负荷工作,的各段并非一直满负荷工作,E1Emnm时,时,E1E13.3.效率效率u从时从时-空图上看,效率就是空图上看,效率就是n n个任务所占的时空区个任务所占的时空区与与mm个段总的时空区之比个段总的时空区之比u根据这个定义,可以计算流水线各段时间不等时根据这个定义,可以计算流水线各段时间不等时的流水线效率的流水线效率 n n 个任务占用的时空区个任务占用的时空区E E m m 个段总的时空区个段总的时空区4.4.吞吐率、加速比和效率的关系吞吐率、加速比和效率的关
6、系uE=nE=nt t0 0/T/T流水流水=mn=mnt t0 0/(T/(T流水流水m)=S/mm)=S/m效率是实际加速比效率是实际加速比S S与最大加速比与最大加速比mm之比。之比。uE=nE=nt t0 0/T/T流水流水=(n/T=(n/T流水流水)t t0 0=TP=TPt t0 0当当t t0 0不变时,流水线的效率与吞吐率呈正比。不变时,流水线的效率与吞吐率呈正比。为提高效率而采取的措施,也有助于提高吞吐率。为提高效率而采取的措施,也有助于提高吞吐率。例例3.13.1 在在静态流水线静态流水线上计算上计算A Ai iB Bi i ,问吞吐率、加速,问吞吐率、加速 比、效率各是
7、多少?比、效率各是多少?解解:(1)(1)确定适合流水处理的确定适合流水处理的计算过程计算过程 (2)(2)画画时时-空图空图 (3)(3)性能计算性能计算吞吐率吞吐率TP=7/20TP=7/20t t0 0加速比加速比 S=S=3434t t0 0/20/20t t0 0=1.7=1.7效率效率E E(4(44 43 36)/(86)/(820)20)0.210.21i=1i=1m m5.5.流水线性能分析实例流水线性能分析实例上述方案性能不高!上述方案性能不高!静态多功能流水线在对某种功能进行处理时,总静态多功能流水线在对某种功能进行处理时,总有某些段处于空闲状态有某些段处于空闲状态 功能
8、切换增加了前一种功能的排空时间和后一种功能切换增加了前一种功能的排空时间和后一种功能的通过时间功能的通过时间 需要把输出回传到输入(相关)需要把输出回传到输入(相关)能否通过动态流水线改进其性能?能否通过动态流水线改进其性能?举例举例I I 举例举例II II 这样行不行?这样行不行?正确方案正确方案例例3.33.3 在在MIPSMIPS的非流水实现和基本流水线中,的非流水实现和基本流水线中,5 5个功能个功能 单元的执行时间:单元的执行时间:10/8/10/10/7ns10/8/10/10/7ns。流水线。流水线 额外开销为额外开销为1ns1ns,求相对于非流水指令实现而言,求相对于非流水指
9、令实现而言,基本基本MIPSMIPS流水线的加速比是多少?流水线的加速比是多少?解:解:T T非流水非流水 =10+8+10+10+7=45=10+8+10+10+7=45 T T流水流水 =10+1=11=10+1=11 加速比加速比S=45/11 4.1S=45/11 4.1注:注:流水线额外开销包括:流水寄存器的延迟(建立流水线额外开销包括:流水寄存器的延迟(建立 时间和传输延迟)以及时钟扭曲时间和传输延迟)以及时钟扭曲6.6.有关流水线性能的若干问题有关流水线性能的若干问题u流水线并不能减少(而且一般是增加)单条指令流水线并不能减少(而且一般是增加)单条指令的执行时间,但能够提高吞吐率
10、的执行时间,但能够提高吞吐率u增加流水线的深度可以提高流水线性能增加流水线的深度可以提高流水线性能u流水线深度受限于流水线的延迟和额外开销流水线深度受限于流水线的延迟和额外开销u需要用高速锁存器作为流水线寄存器需要用高速锁存器作为流水线寄存器-EarleEarle锁存器锁存器u指令之间存在的相关,限制了流水线的性能指令之间存在的相关,限制了流水线的性能EarleEarle锁存器锁存器u19651965年由年由J.G.EarleJ.G.Earle发明发明u优点优点-对时钟扭曲不敏感(相对而言),一般是两级门对时钟扭曲不敏感(相对而言),一般是两级门延迟,避免了数据通过锁存器时可能产生的时钟延迟,避免了数据通过锁存器时可能产生的时钟扭曲扭曲-在锁存器中可以执行两级逻辑运算,而不会增加在锁存器中可以执行两级逻辑运算,而不会增加锁存器的延迟时间,可以隐藏锁存器产生的额外锁存器的延迟时间,可以隐藏锁存器产生的额外开销开销 谢谢!