1.概念
- 程序执行时多条指令重叠进行操作的一种准并行处理实现技术
- 各种部件同时处理时针对不同指令而言的,它们可勇士为多条指令的不同部分进行分工,以提高各部件得利用率和指令得平均执行速度
执行一条指令:1.取指--->2.分析--->3.执行--->
2.流水线计算
- 流水线周期为执行时间最长的一段
- 流水线计算公式为:
- 1条指令执行的时间+(指令条数-1)*流水线周期
- ①理论公式:(t1+t2+...+tk)+(n-1)*△t
- ②实际公式:(k+n-1)*△t;执行部分分为几部分,k就为几
注意:在实际运算中,可能用到理论公式,可能用到实际公式,根据具体情况分析
3.流水线吞吐率计算
流水线的吞吐率是指在单位时间内流水线所完成的任务数量或输出的结果数量;
- 流水线吞吐率的最基本公式:
TP=指令条数/流水线执行时间
- 流水线最大吞吐率
4.流水线的加速比计算
流水线的加速比:完成同样一批任务,不适用流水线所用的时间与使用流水线所用的时间比
S=不使用流水线执行时间/使用流水线执行时间
5.流水线的效率
流水线的效率:指流水线的设备利用率;在时空图上,流水线的效率定为n个任务占用的时空区与k个流水段总的时空区之比
计算流水线效率的公式为:
E=n个任务占用的时空区/k个时间段的总的时空区=T₀/KTк
由上图可知: 任务占用的时空区(灰色部分)为24△t
总的时空区为60△t
故流水线效率为E=24△t/60△t=2/5;
由上分析可知,当每一个工作段时长相等,效率最高