掌握:相关参数计算,以及一些理论知识【一般在上午题当中,分值:1-2分】
- 【掌握的概念】可同时执行多条指令——执行的过程是在多个子部件上进行的,叫做
准并行
技术 - 【掌握的概念】提高各子部件的利用率
- 【掌握的概念】提高每条指令的执行效率,压缩了平均执行时间
- 什么是流水线建立时间
- 什么是流水线周期
- 流水线执行时间计算
- 流水线执行时间的理论公式【默认使用】——学会提取公因式的小技巧
- 流水线执行时间的实践公式【额外】
- 流水线吞吐率和最大吞吐率的计算
流水线技术【第一章当中比较重要的【计算题型】】
- 本身是
指令执行的一种实现过程
——在这个过程当中对指令
的执行效率
和设备的利用率
有很大的提高。
流水线——概念
相关参数计算
掌握:流水线执行时间计算和流水线吞吐率
- 其他俩个都在高级中涉及
有效例子—坐车
以前:
- 先轮胎工作人员做轮胎,做完底盘工作人员再做底盘,做完车身工作人员在做车身,最后玻璃工作人员做玻璃。——轮胎工作人员工作的时候,其他工作人员在休息
现在:
- 一个部件做完另一个跟着做——其中一环出现问题可能整体瘫痪【但是机器不会休息】
概念
多条指令重叠进行操作
- 在同一个时刻,可以允许三条指令同时进行【针对的是不同指令在不同的子部件或者硬件上面】
准并行处理
- 真正的并行是指:三条指令同时进行取指,分析和执行
- 流水线并没有齐头并进,所以称为
准并行
- 注:串行——就是顺序执行的过程
流水线的优势
指令的平均执行速度提高
- 原来9ms,现在5ms
各部件的利用率提高
- 针对每一个部件,原本空闲碎片很多,现在利用起来了
流水线——流水线执行时间计算
n条指令划分成
1
条指令和n-1
条指令两个部分
1
条指令执行时间就是本身的时间——称为流水线建立时间
n-1
条指令每隔一个时间片段
(叫做:流水线周期),n-1
条指令合称——流水线排空时间
流水线周期为执行时间最长的一段
- 例子:每个步骤都是1ms,所以流水线周期为1ms
- 例子:每个步骤分别是3,4,5ms,则流水线周期为5ms
流水线的计算公式——流水线执行时间计算
1条指令执行时间+(指令条数-1)*流水线周期
- 理论公式【考试默认用】:
(t1 + t2 +...+tk) + (n - 1) * t
- 注:一条指令的执行时间分为k份,最后面的t是t1-tk中最大值
- 实践公式【当理论公式算完没有正确答案的时候使用】:k * t + (n - 1) * t
- 注:将每一段都扩大到最长的执行时间(流水线周期t),划分为多少段k就等于几
- 这个算出来的会比理论公式大【留出来冗余部分】
- 两者区别:流水线建立时间
例子——流水线执行时间计算
- 答案:90,4,45
- 计算也可以使用提公因式的方法,简便运算:3 + 2 + 10 * 4【掌握技巧】
- 如果答案中没有45这个选项,就选用带入实践公式来计算【(3 * 4) + (10 - 1) * 4 = 48】
理论公式和实践公式的对比
- 区别在于:流水线建立时间
- 默认使用理论公式,找不到答案再用实践公式
流水线——流水线吞吐率和最大吞吐率的计算
举例:某一个港口的年吞吐率——就是指一年内流通的数量【指的是某一个时间段的任务数】
流水线最大吞吐率
- 流水线最大吞吐率其实就是流水线周期的倒数
- 求取过程【了解即可】
- 其中n是主要变量,(k - 1)是个常数,当n无限大时,可以忽略(k - 1)
例题——求流水吞吐率和最大吞吐率
- 答案:10/45△t,1/4△t
例题讲解
流水线概念问题
- 选A
- 【掌握的概念】可同时执行多条指令——执行的过程是在多个子部件上进行的,叫做
准并行
技术 - 【掌握的概念】提高各子部件的利用率
- 【掌握的概念】提高每条指令的执行效率,压缩了平均执行时间
流水线计算问题—理想公式
- 拓展:实际公式
- (3 * 4) + (100 - 1) * 4
- 拓展:计算吞吐率
- 100 / 405△t
- 拓展:计算最大吞吐率
- 1 / 4△t