计算机系统结构 例题解析二

一,流水线相关
例1:在一个5段流水线处理机上需经9拍才能完成一个任务,其预约表如题28所示:

在这里插入图片描述
解析:(1)
间隔指的是出现两次的间隔拍数
段号1的间隔为8,段号2的间隔为1,段号3的间隔为1,3,4,段号4的间隔为1,段号5的间隔为1
所以延迟表为 {1,3,4,8}
初始冲突向量的位数为拍数-1,并且它的顺序为倒的,发生冲突该位为1,不发生冲突该位为0
有此可得:初始冲突向量为:10001101
解析:(2)
在这里插入图片描述
因为间隔1,3,4,8都禁止使用,所以间隔拍只有2,5,6,7.
初始为10001101,间隔2拍,右移两位,前面加两个0,变为00100011,然后和10001101做或运算,可得
10101111.
间隔5拍,右移5位,前面加5个0,变为00000100,然后和10001101做或运算,可得10001101
同理间隔6拍,可得10001111
间隔7拍,可得10001101
间隔2拍的后续拍数,理论上有2,5,6,7,但是验证,只有5,7是可以回到初始。验证方法:2拍的冲突向量10101111,右移两位00101011,和10001101做或运算,得10101111,不等于10001101,无法形成回环。同理6不可以,所以2拍间隔的后续间隔只有5,7可以回到初始
同理可得,6拍间隔的后续间隔只有5,7可以回到初始。

解析(3)延迟组合有
{5},{7},{2,5},{2,7},{6,5}.{6,7}
最小的平均延迟组合为{2,5},平均拍数为(2+5)/2 = 3.5
答案:最小的平均延迟为3.5拍
最大的吞吐率1/3.5(任务/拍)
扩展:
若是6个任务,求实际吞吐率,且按{2,5}方式调度.则为吞吐率Tp = 6/(2+5+2+5+2+5 )= 6/21拍

例2:在一个4段流水线处理机上需经7拍才能完成一个任务,其预约表如下所示:

在这里插入图片描述

(1)写出延迟表,冲突向量
(2)画出流水线状态转移图
(3)求出最小平均延迟和最大吞吐率及调度方案

解析(1):
1段间隔6,2段间隔4,3段没有间隔,4段间隔2
所以延迟表{2,4,6}
初始冲突向量(参考上一题)101010
解析(2):
在这里插入图片描述
由于246禁止,则只有135可用。
间隔1拍,得出111111,后续间隔没有可以回到初始
间隔5拍,得出101011,后续没有间隔回到初始,但后续3可以到初始间隔3,后续5可以到自己
间隔3拍,得出101111,后续没有间隔回到初始,后续5可以到初始间隔5
其中7*的意思是,经过7拍就又是一个周期,7的倍数拍,可以回到初始,形成回环。
解析(3)
找出几个可能的组合
{1,7},{5,7},{3,5},{5,3},通过比较,得出最小平均延迟为3+5/2 = 4拍

最大吞吐率1/4

最佳调度方案 {1,7},{3,5},{5,3}
因为他们的延迟和都为8且最小

一,多处理机并行算法相关
例1:用霍纳法则给定的表达式如下E=a(b+c(d+ef)) +g,利用减少树高的办法加速运算
(1)画出树形流程图
(2)计算运算级数Tp,处理机机数P,加速比Sp和效率Ep

解析(1):
先把表达式变形,变成适合多处理机处理的形式a(b+cd)+acef+g
在这里插入图片描述
看树形图,多看两遍就能理解,和表达式是一一对应的
解析(2):
运算级数Tp,即树高,只看符号(+ x),不看abcd这些,树高为4,即Tp=4
加速比=单处理机的运算级数/多处理机运算级数
由原表达式可得,T1 = 6,可得加速比Sp = T1/Tp = 6/4=3/2
处理机机数P=3,因为最大宽度为3,同样的只看符号(+ x),不看abcd这些,
(多谢网友评论)
效率Ep = Sp/P = 3/2/3=1/2

相关推荐
©️2020 CSDN 皮肤主题: 游动-白 设计师:白松林 返回首页