版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Amdahl定律 加快某部件执行速度所能获得的系统性能加速比,受限于该部件的执行时间占系统中总执行时间的百分比。系统性能加速比:加速比系统性能改进后系统性能改进前总执行时间改进前总执行时间改进后 加速比依赖于两个因素 可改进比例(Fe):在改进前的系统中,可改进部分的执行时间在总的执行时间中所占的比例。 它总是小于等于1。例如:一个需运行60秒的程序中有20秒的运算可以加速, 那么这个比例就是20/60。 部件加速比(Se) :可改进部分改进以后性能提高的倍数。它是改进前所需的执行时间与改进后执行时间的比。 一般情况下部件加速比是大于1的。例如:若系统改进后,可改进部分的执行时间是2秒, 而改
2、进前其执行时间为5秒,则部件加速比为5/2。 例例1.1 1.1 将计算机系统中某一功能的处理速度加快将计算机系统中某一功能的处理速度加快1515倍,倍,但该功能的处理时间仅占整个系统运行时间的但该功能的处理时间仅占整个系统运行时间的40%40%,则采用此增,则采用此增强功能方法后,能使整个系统的性能提高多少?强功能方法后,能使整个系统的性能提高多少? 解解 由题可知:由题可知: F Fe e = 40% = 0.4 = 40% = 0.4 S Se e = 15 = 15 根据根据AmdahlAmdahl定律可知:定律可知: 采用此增强功能方法后,能使整个系统的性能提高到原来采用此增强功能方
3、法后,能使整个系统的性能提高到原来的的1.61.6倍倍。 6 . 1154 . 0)4 . 01 (1)1 (1SeFeFeSn改进后程序的总执行时间TnSeFeFeTTn10 T0:改进前整个程序的执行时间 1Fe:不可改进比例 系统加速比Sn为改进前与改进后总执行时间之比:SeFeFeTTSnn110 例例1.2 1.2 某计算机系统采用浮点运算部件后,使浮点运算速某计算机系统采用浮点运算部件后,使浮点运算速度提高到原来的度提高到原来的2525倍,而系统运行某一程序的整体性能提高到倍,而系统运行某一程序的整体性能提高到原来的原来的4 4倍,试计算该程序中浮点操作所占的比例。倍,试计算该程序
4、中浮点操作所占的比例。 解解 由题可知:由题可知: S Se e = 25 S = 25 Sn n = 4 = 4 根据根据AmdahlAmdahl定律可知:定律可知: 由此可得:由此可得:Fe = 78.1% = 78.1% 即程序中浮点操作所占的比例为即程序中浮点操作所占的比例为78.1%78.1%。25114FeFe Amdahl定律:一种性能改进的递减规则 如果仅仅对计算任务中的一部分做性能改进,则改 进得越多,所得到的总体性能的提升就越有限。重要推论:如果只针对整个任务的一部分进行改 进和优化,那么所获得的加速比不超过: 1/(1可改进比例) 哈夫曼编码 基本思想:当各种事件发生的概
5、率不均等时,可以对发生概率最高的事件用最短的位数(时间)来表示(处理),而对于出现概率较低的事件,则可以用较长的位数(时间)来表示(处理),从而使总的平均位数(时间)缩短。构造哈夫曼树的方法 将各事件按其使用频度从小到大依次排列 ; 每次从中选择两个频度值最小的结点,将其合并成一个新的结点,并把新结点画在所选结点的上面, 然后用两条边把新结点分别与那两个结点相连。 新结点的频度值是所选两个结点的频度值的和。 把新结点与其他剩余未结合的结点一起,再以上面的步骤进行处理,反复进行,直到全部结点都结合完毕、形成根结点为止。 0.05 画哈夫曼树的一个基本步骤画哈夫曼树的一个基本步骤 0.02 0.0
6、3 操作码优化的程度可以用信息熵来衡量。 表示用二进制编码表示n个码点时,理论上的最短平均编码长度 。 例例2.1 假设某模型机有假设某模型机有7条指令,这些指令的使用频度如表左条指令,这些指令的使用频度如表左边所示。边所示。 (1) (1) 计算这计算这7 7条指令的操作码编码的最短平均码长;条指令的操作码编码的最短平均码长; (2) (2) 画出哈夫曼树,写出这画出哈夫曼树,写出这7 7条指令的哈夫曼编码,并计算该条指令的哈夫曼编码,并计算该编码的平均码长和信息冗余量。编码的平均码长和信息冗余量。niiippH12log2.3 指令系统的设计与优化指令指令 频度频度pi 操作码使用操作码使
7、用哈夫曼编码哈夫曼编码 操作码操作码长度长度li 利用哈夫曼概念利用哈夫曼概念的扩展操作码的扩展操作码 操作码操作码长度长度li I1 0.40 0 1 0 0 2 I2 0.30 1 0 2 0 1 2 I3 0.15 1 1 0 3 1 0 2 I4 0.05 1 1 1 0 0 5 1 1 0 0 4I5 0.04 1 1 1 0 1 5 1 1 0 1 4I6 0.03 1 1 1 1 0 5 1 1 1 0 4I70.03 1 1 1 1 1 5 1 1 1 1 42.3 指令系统的设计与优化 解解 (1)(2)其哈夫曼树如图所示,该树的每个叶结点分别对应于一条指)其哈夫曼树如图所示
8、,该树的每个叶结点分别对应于一条指令。在该树中,对每个结点向下的两个分支,分别用二进制令。在该树中,对每个结点向下的两个分支,分别用二进制“1”和和“0”来表示。来表示。 从该哈夫曼树可以很容易地写出哈夫曼编码。从该哈夫曼树可以很容易地写出哈夫曼编码。 具体方法具体方法:对于任意一条指令:对于任意一条指令Ii (i=1,2,7),从哈),从哈夫曼树根结点出发、沿一条路径连接到叶结点夫曼树根结点出发、沿一条路径连接到叶结点Ii,把途中所经过的各,把途中所经过的各分支的分支的“0”和和“1”按从左到右的顺序记录下来,便是该指令的哈夫按从左到右的顺序记录下来,便是该指令的哈夫曼曼编码。上表中列出了所
9、有指令的哈夫曼编码。编码。上表中列出了所有指令的哈夫曼编码。17. 2log712iiippH 1 1 1 1 1 1 0 0 0 0 0 I7 I6 I5 I4 I3 I2 I1 1.00 0.60 0.30 0.15 0.06 0.09 0.03 0.03 0.04 0.40 0.30 0.15 0.05 哈夫曼树举例哈夫曼树举例 2.3 指令系统的设计与优化该哈夫曼编码的平均码长是:该哈夫曼编码的平均码长是:其信息冗余量为其信息冗余量为 20. 271iiilpL1.36%2.202.172.203.2 流水线的性能指标 例例3.13.1 设在下图所示的静态流水线上计算:设在下图所示的静
10、态流水线上计算: 流水线的输出可以直接返回输入端或暂存于相应的流水寄存器中,流水线的输出可以直接返回输入端或暂存于相应的流水寄存器中,试计算其吞吐率、加速比和效率。试计算其吞吐率、加速比和效率。3.2.4 流水线的性能分析举例)(41iiiBA 1 2 3 4 5 乘法乘法 加减法加减法 6 7 8 ( (每段的时间都为每段的时间都为t t) )3.2 流水线的性能指标解解:(:(1 1)选择适合于流水线工作的算法选择适合于流水线工作的算法 先计算A1+B1、A2+B2、A3+B3和A4+B4; 再计算(A1+B1)(A2+B2)和(A3+B3)(A4+B4); 然后求总的乘积结果。(2 2)
11、画出时空图)画出时空图 时间 段 1 2 3 4 5 6 7 8 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 输 入 A1 B1 A2 B2 A3 B3 A4 B4 A B C D A B C D AB CD AB CD ABCD A=A1+B1 B=A2+B2 C=A3+B3 D=A4+B4 tTP18721836ttS25. 01884364E3.2 流水线的性能指标p在18个t时间中,给出了7个结果。吞吐率为: tTP187p 不用流水线,由于一次求和需不用流水线,由于一次求和需6 6t t,一次求积需一次求积需4 4t t, 则产生上述
12、则产生上述7 7个结果共需个结果共需(4 46+36+34 4)t t = 36 = 36t t 加速比为:加速比为: (3 3)计算性能)计算性能21836ttS3.2 流水线的性能指标p 流水线的效率流水线的效率 25. 01884364E可以看出,在求解此问题时,该流水线的效率不高。 (原因)3.2 流水线的性能指标主要原因 多功能流水线在做某一种运算时,总有一些段是空闲的; 静态流水线在进行功能切换时,要等前一种运算全部流出流水线后才能进行后面的运算; 运算之间存在关联,后面有些运算要用到前面运算的结果; 流水线的工作过程有建立与排空部分。 3.2 流水线的性能指标 例例3.2 3.2
13、 有一条动态多功能流水线由有一条动态多功能流水线由5 5段组成,加法用段组成,加法用1 1、3 3、4 4、5 5段,乘法用段,乘法用1 1、2 2、5 5段,第段,第4 4段的时间为段的时间为2 2t t,其余各段时间,其余各段时间均为均为t t,而且流水线的输出可以直接返回输入端或暂存于相应,而且流水线的输出可以直接返回输入端或暂存于相应的流水寄存器中。若在该流水线上计算的流水寄存器中。若在该流水线上计算: : 试计算其吞吐率、加速比和效率。试计算其吞吐率、加速比和效率。)(41iiiBA 1 2 3 4 5 乘法乘法 加法加法 t t t 2t t 3.2 流水线的性能指标解解: (1)
14、 : (1) 选择适合于流水线工作的算法选择适合于流水线工作的算法p应先计算A1B1、A2B2、A3B3和A4B4;p再计算(A1B1)(A2B2) (A3B3)(A4B4);p然后求总的累加结果。(2) (2) 画出时空图画出时空图(3) (3) 计算性能计算性能3.2 流水线的性能指标 时间 段 1 2 3 4 5 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 输 入 A1 B1 A2 B2 A3 B3 A4 B4 A B C D A B C D AB CD AB CD ABCD A=A1B1 B=A2B2 C=A3B3 D=A4B4 69. 16172
15、ttStTP617383 . 01655334E3.2 流水线的性能指标 下面我们再看一个例子:下面我们再看一个例子: 例例 在在静态流水线静态流水线上计算上计算: : 求:吞吐率,加速比,效率。求:吞吐率,加速比,效率。解:解: (1) (1) 确定适合于流水处理的确定适合于流水处理的计算过程计算过程 (2) (2) 画时空图画时空图 (3) (3) 计算性能计算性能 吞吐率吞吐率 TPTP7 7(20(20t t) ) 加速比加速比 S S(34(34t t) )(20(20t t) )1.71.7 效率效率 E E(4(44 43 36)6)(8(820)20)0.210.21)(41i
16、iiBA 3.2 流水线的性能指标3.2 流水线的性能指标可以看出,在求解此问题时,该流水线的效率不高。 动态流水线的时空图 举例举例 : 这样行不行? 正确答案在非线性流水线中,存在反馈回路,当一个任务在流水线中流过时,可能要多次经过某些段。 流水线调度要解决的问题: 应按什么样的时间间隔向流水线输入新任务,才能既应按什么样的时间间隔向流水线输入新任务,才能既不发生功能段使用冲突,又能使流水线有较高的吞吐率和不发生功能段使用冲突,又能使流水线有较高的吞吐率和效率?效率?3.3 非线性流水线的调度向一条非线性流水线的输入端连续输入两个任务之间的时间间隔称为非线性流水线的启动距离。会引起非线性流
17、水线功能段使用冲突的启动距离则称为禁用启动距离。启动距离和禁用启动距离一般都用时钟周期数来表示,是一个正整数。预约表 横向(向右):时间(一般用时钟周期表示) 纵向(向下):流水线的段3.3.1 单功能非线性流水线的最优调度 1 1 时间时间 功能段功能段 S1S1 S2S2 S3S3 S4S4 S5S5 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 例:一个例:一个5功能段非线性流水线预约表功能段非线性流水线预约表 如果在第n个时钟周期使用第k段,则在第k行和第n列的交叉处的格子里有一个。 如果在第k行和第n列的交叉处的格子里有一个,则表示在第n个时钟周期要使用第k段。 根
18、据预约表写出禁止表F禁止表F:一个由禁用启动距离构成的集合。 具体方法 对于预约表的每一行的任何一对,用它们所在的列号相减(大的减小的),列出各种可能的差值,然后删除相同的,剩下的就是禁止表的元素。 在上例中 第一行的差值只有一个:8; 第二行的差值有3个:1,5,6; 第3行只有一个,没有差值; 第4和第5行的差值都只有一个:1; 其禁止表是:F= 1,5,6,8 根据禁止表F写出初始冲突向量C0(进行从一个集合到一个二进制位串的变换 )冲突向量C:一个N位的二进制位串。设C0=(cNcN-1cic2c1),则: ci=0 :允许间隔i个时钟周期后送入后续任务 ci=1 :不允许间隔i个时钟
19、周期后送入后续任务 对于上面的例子 F= 1,5,6,8 C0=(10110001) ci 1 iF 0 iF 根据初始冲突向量C0画出状态转换图当第一个任务流入流水线后,初始冲突向量C0决定了下一个任务需间隔多少个时钟周期才可以流入。在第二个任务流入后,新的冲突向量是怎样的呢? 假设第二个任务是在与第一个任务间隔j个时钟周期流入,这时,由于第一个任务已经在流水线中前进了j个时钟周期,其相应的禁止表中各元素的值都应该减去j,并丢弃小于等于0的值。 对冲突向量来说,就是逻辑右移j位(左边补0)。 在冲突向量上,就是对它们的冲突向量进行“或”运算。 SHR(j)(C0)C0 其中:SHR(j)表示
20、逻辑右移j位 推广到更一般的情况假设: Ck:当前的冲突向量 j: 允许的时间间隔则新的冲突向量为: SHR(j)(Ck)C0对于所有允许的时间间隔都按上述步骤求出其新的冲突向量,并且把新的冲突向量作为当前冲突向量,反复使用上述步骤,直到不再产生新的冲突向量为止。从初始冲突向量C0出发,反复应用上述步骤,可以求得所有的冲突向量以及产生这些向量所对应的时间间隔。由此可以画出用冲突向量表示的流水线状态转移图。 有向弧:表示状态转移的方向 弧上的数字:表示引入后续任务(从而产生新的冲突向量)所用的时间间隔(时钟周期数)对于上面的例子对于上面的例子(1 1) C C0 0= =(10110001101
21、10001) 引入后续任务可用的时间间隔为:引入后续任务可用的时间间隔为:2 2、3 3、4 4、7 7个时钟周期个时钟周期 如果采用如果采用2 2,则新的冲突向量为:,则新的冲突向量为: (0010110000101100)(1011000110110001)= = (1011110110111101) 如果采用如果采用3 3,则新的冲突向量为:,则新的冲突向量为: (0001011000010110)(1011000110110001)= = (1011011110110111) 如果采用如果采用4 4,则新的冲突向量为:,则新的冲突向量为: (0000101100001011)(1011
22、000110110001)= = (1011101110111011) 如果采用如果采用7 7,则新的冲突向量为:,则新的冲突向量为: (0000000100000001)(1011000110110001)= = (1011000110110001)(2 2)对于新向量)对于新向量(1011110110111101),其可用的时间间隔为,其可用的时间间隔为2 2个个和和7 7个个时钟时钟 周期。用类似上面的方法,可以求出其后续的冲突向量分别为周期。用类似上面的方法,可以求出其后续的冲突向量分别为 (1011110110111101)和和(1011000110110001)。(3 3)对于其他
23、新向量,也照此处理。)对于其他新向量,也照此处理。(4 4)在此基础上,画出状态转移示意图。)在此基础上,画出状态转移示意图。9+,7 初始状态初始状态 4 3 7,9+ 4 3 7,9+ 2 2 9+,7 7,9+ 10110111 10110001 10111011 10111111 10111101 根据状态转换图写出最优调度方案 根据流水线状态图,由初始状态出发,任何一个闭合回路即为一种调度方案。 列出所有可能的调度方案,计算出每种方案的平均时间间隔,从中找出其最小者即为最优调度方案。 上例中,各种调度方案及其平均间隔时间。 最佳方案:(3,4) 平均间隔时间:3.5个时钟周期(吞吐率
24、最高) 方案(4,3)的平均间隔时间也是3.5 ,但它不是最佳方案,为什么?调度策略 平均延迟拍数 (2,7)(2,2,7)(3,7)(3,4)(3,4,3,7)(3,4,7)(4,3,7)(4,7)(7) 4.53.6753.54.254.674.675.57 各种调度策略及平均延迟拍数各种调度策略及平均延迟拍数 方案(3,4)是一种不等时间间隔的调度方案,与等间隔的调度方案相比,在控制上要复杂得多。为了简化控制,也可以采用等间隔时间的调度方案,但吞吐率和效率往往会下降不少。 在上述例子中,等时间间隔的方案只有一个:(7),其吞吐率下降了一半。8.5 通道处理机通道流量一个通道在数据传送期间
25、,单位时间内能够传送的数据量。所用单位一般为B/s。 又称为通道吞吐率、通道数据传输率等。通道最大流量 一个通道在满负荷工作状态下的流量 。8.5.4 通道流量分析8.5 通道处理机参数的定义 TS:设备选择时间。从通道响应设备发出的数据传送请求开始,到通道实际为这台设备传送数据所需要的时间。 TD:传送一个字节所用的时间。 p:在一个通道上连接的设备台数,且这些设备同时都在工作。 n:每台设备传送的字节数,这里假设每台设备传送的字节数都相同。 k:数组多路通道传输的一个数据块中包含的字节数。在一般情况下,kn。对于磁盘、磁带等磁表面存储器,通常k=512。 T:通道完成全部数据传送工作所需要的时间。8.5 通道处理机字节多路通道 数据传送过程 通道每连接一台个外设,只传送一个字节,然后又与另一台设备连接,并传送一个字节。p台设备每台传送n个数据总共所需的时间为np)T(TTDSBYTE TS TD TS TD T
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 吉首大学《历史民族学》2021-2022学年第一学期期末试卷
- 吉首大学《电力系统稳态分析》2021-2022学年期末试卷
- 《机加工艺方案设计与实施》考试卷A卷标准答案及评分标准
- 吉林艺术学院《影视色彩处理》2021-2022学年第一学期期末试卷
- 吉林艺术学院《视唱III》2021-2022学年第一学期期末试卷
- 地铁接管协议书范本范本下载
- 父母躲避赔偿协议书范文范本
- 吉林师范大学《指挥法I》2021-2022学年第一学期期末试卷
- 吉林师范大学《信息设计》2021-2022学年第一学期期末试卷
- 规范化培训终止协议书范文模板
- 【课件】+布局经营-绘画构图基础+课件高中美术人美版(2019)选择性必修1+绘画
- 《BIQS基础培训》课件
- 停车场系统合同范本
- 2023年国家执业兽医资格考试试卷及参考答案下午卷1
- 偏差行为、卓越一生3.0版
- 企业政府沟通与合作制度
- 2024建筑外墙风貌改造工程承包合同
- 2023年中级经济师《人力资源管理》(真题卷)(11月11日下午)
- 【浅析PLC在数控机床中的应用5000字(论文)】
- 家长会课件:主题班会高二家长会课件
- 肋骨骨折健康宣教内容
评论
0/150
提交评论