流水线计算

流水线计算:

某计算机系统采用5级流水线结构执行指令,设每条指令的执行由取指令(2Δt),分析指令(1Δt),取数操作(3Δt),运算(1Δt)和写回结果(2Δt)组成,并分别用5个子部件完成,该流水线的最大吞吐量(?);若连续向流水线输入10条指令,则该流水线的加速比为(?);

n:指令条数,最大吞吐量计算公式:
指令条数 / (流水线周期和 + (指令条数 - 1) * 最大指令周期),即:

n / (SUM(Δt) + (n - 1) * max(Δt))

解:

1) 流水线最大吞吐量:

    n / (2Δt + 1Δt + 3Δt + 1Δt + 2Δt + (n - 1) * 3Δt)  

=  n/(6Δt + 3nΔt);

当n趋向于无穷大的时候,上式结果为 1/3;

2) 流水线的加速比:

10条指令不适用流水线 = 

(2Δt + 1Δt + 3Δt + 1Δt + 2Δt) * 10 = 90Δt;

10条指令使用流水线 =

(2Δt + 1Δt + 3Δt + 1Δt + 2Δt + (10 - 1) * 3Δt) = 36Δt;

加速比:

90Δt / 36Δt = 5:2;

你可能感兴趣的:(软考,系统架构设计师)