计算机系统结构习题讲解
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(2) 已知 t1= t2 =2 t , t3= t , 代入以上公 式得 T1=500 t , T2=401 t , T3=203 t (3) 已知 t1= t3 =5 t , t2=2 t , 代入以上公 式得 T1=1200 t , T2=705 t, T3=510 t
题3.12
S4 S3 S2 S1
5 11 6
9
7
9 10 10 10 10 10
8
11 12
11 12 11 12 13 13 13 14 13 14 13 14 14
加
9 9
9
15
11 12
11 12
15
15
14
1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8
乘
1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8
题3.19
f=x1*y1*z1+x2*y2*z2+x3*y3*z3+x4*y4*z4+x5*y5*z5
1 6
6+7=11 S6 S5 S4 S3 S2 S143;9=12
2 3 3
3 8
4 9
5 10
12+13=14
10+11=13
4 5 6 7
8
9 10
10
11
4 5
5 6
6 7
7 8
8 9
9
10
4
11
11 1 2 3 4 5 6 7 8 9 12 12
12
13
10
11
T=22 t TP=14/(22 t ) ≈12.7*106/s S=(14*4 t )/22 t ≈2.545 E=(14*4 t )/(6*22 t ) ≈0.424
题3.20
(1)T1=5 t*8+5 t*7=75 t
(3)按等时间间隔最优调度策略(4),连续输 入10个任务时的流水线实际吞吐率、加速比和 效率为:
T=(7+9*4) t =43 t
TP=10/43 t≈0.232/
t
S=(10*7 t)/43 t ≈1.63
E=(10*10 t)/ (5*43 t) = 20/43 ≈0.465
按不等时间间隔最优调度策略(2,2,5),连续输 入10个任务时的流水线实际吞吐率、加速比和 效率为:
9+7=12 11+12=14
10+8=13 13+14=15
1 2 3 4 5 6 7 8
T=26 t TP=15/(26 t ) =0.58/ t S=(15*5 t )/26 t =2.88 E=(15*5 t )/(10*26 t ) =0.288
题3.21
(1)F={ 8, 1, 5, 6 } C0=( 10110001 ) (2)
T=(7+9*3) t =34 t
TP=10/34 t≈0.294/
t
S=(10*7 t)/ 34 t≈2.06
E=(10*10 t)/ (5*34 t) = 20/34 ≈0.588
题3.23
(1)F={ 5, 2, 1 }
3
C0=( 10011 )
题3.18
F=a1*b1+a2*b2+a3*b3+a4*b4+a5*b5+a6*b6+a7*b7+a8*b8
1 2 3 4 5 6 7 8 1+2=9 3+4=10 5+6=11 7+8=12 9+10=13 11+12=14 13+14=15
S6 S5 S4 S3 S2 S1
1
1 1 2 2 3
③ “执行k”、“分析k+1”、“取指k+2”重叠
取指k 分析k 执行k 取指k+2 分析k+2 执行k+2 取指k+3 分析k+3 执行k+3
取指k+1 分析k+1 执行k+1
T3=
t1 + max{ t1 , t2 } + 98* max{ t1 , t2 , t3 } + max { t2 , t3 } + t3
(3)采用瓶颈段并联方法改造尾乘段,画出实 现同一计算的时空图,并求流水线的实际吞吐 率、加速比和效率。
S3 S23 S22 S21 S1
1
2 2 1 3 2 2 3 3 3 3
1
1 2
1
T=11 t
S=3*5 t/11 t ≈1.364
TP=3/11 t≈0.27/
t E=(3*5 t)/(11 t*5) ≈ 0.27
题3.14
F=(A1+A2)+(A3+A4)+(A5+A6)+(A7+A8)+(A9+A10)
1 2 3 4 5 7+8=9
6 7 7 7 7 8 8 8
1+2=6 S5 S4 S3 S2 S1
1 1 1 1 1 2 2 3 2 3 4 2 3 4 5
3+4=7
2 3 4 5 6 6 4
6+5=8
(2)采用瓶颈段细分方法改造尾乘段,画出实 现同一计算的时空图,并求流水线的实际吞吐 率、加速比和效率。
S3 S23 S22 S21 S1
1 1 1 1 1 2 2 2 2
2 3 3 3 3
3
T=11 t
S=3*5 t/11 t ≈1.364
TP=3/11 t≈0.27/
t
E=(3*5 t)/(11 t*5) ≈ 0.27
乘
1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8
1 2 3 4 5 6 7 8
T=30 t
TP=15/(30 t ) =0.5/ t
S=(15*5 t )/30 t =2.5 E=(15*5 t )/(10*30 t ) =0.25
(4)乘加双功能动态流水线 1 9 2 3 10 4 A●B=a1*b1+a2*b2+a3*b3+a4*b4+ a5*b5+a6*b6+a7*b7+a8*b8
5 13 6 14 7 15 8
1 9
2 10 3
11 4
12
加
乘
1
2
9 3
10 4
11 5
12 6
13 7
14 8
15
T=9*5 t =45 t
S=(15*5 t )/45 t ≈1.67
TP=15/(45 t ) ≈0.33/
t
E=(15*5 t )/(2*45 t ) ≈0.83
(3)乘加双功能静态流水线
S4 S3 S2 S1
1 1
1
1 2
2
2 3
2 3
3
3
4
3
4
4
4
4
1
1 2
2
3
4
TP=4/15 t =0.267/ t S=24 t /15 t =1.6 E=(6 t *4)/(15 t*4)=0.4
(2)说明消除瓶颈段的两种方法。采取两种 方法改造流水线,分别画出改造后的流水线和 连续处理4个数据的时空图,并求出流水线的 实际吞吐率、加速比和效率。 消除流水线瓶颈段的两种方法是瓶颈段细分 和瓶颈段并联。 ① 采用瓶颈段细分的方法
1
2
3
4
5
6
7
8
9
10
1
1 1 2 2 3
2
3 4
3
4 5
4
5 6
5
6 7
6
7 8
7
8 9
8
9 10
9
10
10
TP=10/15 t =0.67/ t
S=10*4 t /15 t =2.67
E=(4*10 t ) / (4*15 t ) =0.67
题3.13
S1 S2 S3
t
t
t
S4 3 t
(1)试画出连续处理4个数据的处理过程时空图,并求出 流水线的实际吞吐率、加速比和效率。
S1 S2 S3 S41 S42 S43
t
t
t
t
t
t
S43 S42 S41 S3 S2 1 1 1 2 3 1 1 2 3
1
2 3 4
2 3 4
3
4
4
2
3 4
4 t
S1
2
TP=4/9 t =0.444/ t S=24 t /9 t =2.67 E=(6 t *4)/(9 t*6)=0.444
使用瓶颈段并联方法改造流水线瓶颈段S4
S41 3 t S42 3 t S43 3 t
S1
S2
S3
t
t
t
S43
S42 2 1 1 1 1 2 2 3 4 1 3 4
3 2 1 4
3 2 4
3 4 4
S41 S3 S2
S1
2
3
t
TP=4/9 t =0.444/ t S=24 t /9 t =2.67 E=(6 t *4)/(9 t*6)=0.444
题3.22
(1)F={ 6, 3, 1 }
5
C0=( 100101 )
100101
5 2 4 5
101101
2
5
100111
4
101111
(2)可得调度策略及平均时间间隔为: (2, 5) 3.5 (4) 4 (5) 5 (4, 5) 4.5 (2,2,5) 3 可得等时间间隔调度的最优调度策略是(4), 流水线的最大吞吐率为TPmax=1/(4 t )=0.25/ t 不等时间间隔调度的最优调度策略是(2,2,5), 流水线的最大吞吐率为TPmax=1/(3 )=0.33/ t
A●B=a1*b1+a2*b2+a3*b3+a4*b4+ a5*b5+a6*b6+a7*b7+a8*b8
5 11 6 7 12 8 13+14=15 9+10=13 11+12=14
1 9
2
3 10 4
9 10 11 12 9 10 11 12
13 13 13 13 14 14
13
1 14
加
9 10 11 12 9 10 11 12 9 10 11 12 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8
题3.17
F=(a1+b1) ×(a2+b2) ×(a3+b3)+(a4+b4)
1 2 3 4 1*2=5 S6 S5 S4 S3 S2 1 1 2 1 2 2 3 4 5 3*4=6 5*6=7 3 4 5 5 6 6
1
2
6
3
4
4 5 6
S1
3
t
T=15 t TP=7/(15 t ) S=(7*4 t )/15 t≈1.867 E=(7*4 t)/(6*15 t ) ≈0.31
计算机系统结构习题讲解
第3章 流水线
题3.11
(1) ① 顺序执行方式
T1=100*( T2=
取指k
t1+ t2+ t3)
② 仅“执行k”和“取指k+1”重叠
t1 + 100 t2 +99*max{ t1 , t3 } + t3
分析k 执行k 取指k+1 分析k+1 执行k+1 取指k+2 分析k+2 执行k+2
2
3 4
3 4 5
4 5 6
5 6 7
6 7 8
7 8
8
9
9 9 1 2 3 4 5 6 7 8 9 10 10 11
10 11 12
T=26 t TP=15/(26 t ) ≈0.577/ t S=(15*4 t )/26 t ≈2.308 E=(15*4 t )/(6*26 t ) ≈0.385
A●B=a1*b1+a2*b2+a3*b3+a4*b4+a4*b4+ a5*b5+a6*b6+a7*b7+a8*b8 TP1=15/75 t =0.2/ t E1=(15*5 t)/(2*75 t)=0.5
加 乘
1 2 3 4 5 6 7 8
9
10
11
12
(2)A●B=a1*b1+a2*b2+a3*b3+a4*b4+ a5*b5+a6*b6+a7*b7+a8*b8
题3.16
(1)画出计算a×b×c×d用时最少的时空图,并
求流水线的实际吞吐率、加速比和效率。
S3 S2 S1
1
1 1
2 2
2 3 3
3
1
1 2
2
3
3
F=a×b×c×d
1 2
1×2=3
T=13 t TP=3/13 t ≈0.23/
t
S=3*5 t/13 t ≈1.154 E=(3*5 t)/(13 t *3) ≈ 0.38
10110001
7 3 4 7 7 2 7
10110111
3 4
10111101
2
10111011
10111111
(3)可得调度策略及平均时间间隔为: (7) 7 (3,4,7) 14/3 (2,2,7) 3.67 (4,3) 3.5 (2,7) 4.5 (4,7) 5.5 (3,7) 5 (4,3,7) 4.67 (3,4) 3.5
5
3
4 5
5
6
6
7
8
S=9*5 t/21 t =2.143 TP=9/21 t =0.429/ t E=(9 t *5)/(21 t *5)=0.429
题3.15
S1
S2 S3 S4
t
(1)当流水线间隔 t连续流入对象时,会发生流水线 阻塞
(2)最大吞吐率是TPmax=1/2 t =0.5/ t
连续流入10个对象,流水线的实际吞吐率为
可得 (3,4)为最优调度策略
最小平均延迟时间为3.5 t 。流水线的最大吞 吐率为1/(3.5 t) ≈0.286。 (4)按该调度策略,连续流入8个对象时
T=( 9+3+4+3+4+3+4+3 ) t =33 t
TP=8/33 t ≈0.24/ S=8*9 t/33 t ≈2.18
t
E=(8*10 t )/ (5*33 t ) ≈0.485
TP=10/(5+9*2) t =0.435/ t
连续流入10个对象,流水线的效率为
E=(10*5 t )/(23 t*4) ≈ 0.543
(3)为提高吞吐率,需要增设一个段S3与原来的段 串联,从而消除瓶颈 T=(5+9) t =14 t
TP=10/14 t≈0.714/
t
E=(10*5 t )/(14 t*5) ≈ 0.714