流水线

我们把计算机的一条指令抽象成三个步骤(实际不止这些)

现在向计算机发送三条指令A,B,C,如果不采用流水线的方式传输,那么在每个机器周期中的执行步骤如下图所示(我们假设每个步骤都会耗费一个机器周期):

采用流水线的方式传输如下图所示:

对比上面两张图,我们可以看出,流水线是一种准并行处理技术:

第1个机器周期:处理A指令的取指步骤

第2个机器周期:处理A指令的分析步骤,同时也在处理B指令的取指步骤

以此类推,我们可以看出,同一机器周期只允许处理不同的步骤,不能处理相同的步骤,这样在保证指令安全的同时也可以加快处理速度,提升了效率,这就是流水线带来的好处

吞吐率

流水线理解了,吞吐率就好说了,这里的吞吐率指的是流水线的吞吐率,简单理解吞吐率就是通过数值来反应计算的处理速度,先列个公式:吞吐率 = 指令条数 / 流水线时间

指令条数:需要计算吞吐率的指令的总数

流水线时间:这里的流水线时间指的并不是一个指令流水线花费的时间,而是跑完公式中指定的指令条数所需要的时间,对比上面两个图,一条指定所需要耗费的流水线时间是3个机器周期,而跑完ABC三条指令耗费的流水线时间是5个机器周期,对于流水线时间,有个计算公式:一条指令流水线所需要耗费的时间   + (指令条数 - 1)* 一条流水线中最耗时的步骤时间

吞吐率一般分为实际吞吐率和最大吞吐率,下面我从两个案例来分别讲述:

实际吞吐率

按照上面的公式,指令条数为8条,流水线时间=(1+2+3+1) + (8-1) * 3=28,结果就显而易见是C了

最大吞吐率

我们列个一元二次方程,设最大吞吐率为y,指令条数为x,按照上面的公式y=x /((2+1+3+1+2) + (x-1)* 3),简化下就是y=x / (3x + 6)=1 / 3 - 2 / (3x-6),x为正整数,当x趋于无穷大的时候,y的最大值为1/3

大家想要更加详细的了解其中的原理,可以参考:https://blog.csdn.net/yi_zz/article/details/7479912

用通俗易懂的语言阐述复杂的概念,学无止境,共勉前进!!!

计算机指令流水线时间计算,计算机指令-流水线和吞吐率相关推荐

  1. 流水线性能吞吐率、加速比、效率计算

    流水线性能吞吐率.加速比.效率计算 吞吐率 1.最大吞吐率 Tpmax=1△tTpmax=\frac{1}{△t}Tpmax=△t1​ 2.实际吞吐率 Tp=n(m+(n−1))∗△tTp=\frac ...

  2. 指令——流水线和吞吐率

    指令--流水线和吞吐率 解析: (1)吞吐率有个公式:指令条数除以流水线时间 (2)流水线时间计算有个公式:一条指令所需时间+(指令条数-1)*时间最长的指令的一段 7+(8-1)*3 流水线: 流水 ...

  3. 软考--流水线问题吞吐率详解

    今天从网上看到一篇不错的关于流水线吞吐率的文章,为软考问题做出了详细的解释,转载分享给广大网友. 从生活中的工厂入手,流水线上每个工人所作的工作都不同,但却是相连的,上面的工人做完了他的事就直接丢给下 ...

  4. 计算机系统结构:Pipelining 基本流水线技术

    如何让程序运行更快? CPU性能公式:CPU时间 = CPI × 所执行的指令条数 × 时钟周期时间 关于流水线的几个问题: Pipeline Hazard(Data hazard.structure ...

  5. 关于cpu流水线的各阶段周期,吞吐率计算问题

    本人在复习计组流水线时,遇到了一些问题,再次记录,以备不时之需. 首先要弄明白一点,那就是cpu的各阶段是否具有相同的时钟周期,也就是说,每个阶段所花费的时间是否都是相同的? 为什么会想到这个问题,先 ...

  6. 体系结构 流水线吞吐率、加速比、效率

    https://www.icourses.cn/web/sword/portal/shareDetails?&cId=3266#/course/assignments 吞吐率:单位时间内流水线 ...

  7. 1.6流水线:流水线、流水线周期、流水线执行时间、流水线吞吐率、流水线加速比

    1.6流水线:流水线.流水线周期.流水线执行时间.流水线吞吐率.流水线加速比 流水线 流水线周期 流水线执行时间 理论公式 实践公式 举例计算流水线执行时间 流水线吞吐率 举例计算流水线吞吐率 流水线 ...

  8. 加速器吞吐率、能效比的计算

    吞吐率和能效比是加速器性能评估的重要指标 首先介绍吞吐率和能效比的公式,然后介绍吞吐量的计算方式 一.吞吐率 吞吐率是指单位时间内运行加.减.乘.除的次数. 吞吐率=吞吐量/运行时间吞吐率= 吞吐量/ ...

  9. 波特率-符号速率-传码率-数据速率-比特率-吞吐率-带宽区别

    计算机界原文 信号在信道上传输的基本形式如下图 如上图所示,传输bit0~bit7,但由于通信机制的限制,我们必须在bit0之前加上start bit或者起始帧,在bit7之后加上stop bit或者 ...

最新文章

  1. 喷涂机器人保养应该注意的七个事项
  2. 深入掌握Java技术 EJB调用原理分析
  3. ios unrecognized selector sent to instance出现的原因和解决方案
  4. oracle 创建用户、授权、表空间
  5. python对文件的读操作有哪些方法-Python中文件的读取和写入操作
  6. JavaScript基础(一)基本认识
  7. python中数组的del,remove,pop区别详解
  8. 2017年11月01日普及组 I Liked Matrix!
  9. Java布局怎么加图片组件_java – 将图像缩略图添加到网格中的布局...
  10. java js获取css方法_5种JavaScript和CSS交互的方法
  11. DockPanel 类
  12. android批处理脚本,BAT批处理一键生成APK包脚本分享
  13. Apache开启Gzip压缩设置(转)
  14. activeMQ入门安装
  15. Photoshop通道抠出散乱的儿童头发
  16. JAVA学习经验--总结JAVA抽象类和接口
  17. linux 命令安装 wine,如何在Ubuntu 18.04 LTS上安装Wine
  18. hdu--1077--Catching Fish
  19. 投身管理工作(项目经理修炼手册正文的开头)
  20. 【C++】类和对象(中) —— 构造函数 | 析构函数 | 拷贝构造 | 赋值运算符重载

热门文章

  1. MySQL学习第四章课后题
  2. joc杂志影响因子2019_边缘计算 | SCI期刊JoCCASA诚邀专刊稿件
  3. python数据分析考点_零基础30天入门python数据分析|知识点整理
  4. oracle修改10到20,Oracle 10.2.0.5 RMAN迁移并升级11.2.0.4一例
  5. 【☀️~爆肝万字总结递归~❤️玩转算法系列之我如何才能掌握递归解题的能力❤️~十大经典问题助你突破极限~建议收藏☀️】
  6. SSM实现个人博客-day03
  7. XCTF WEB backup
  8. 【记录】python多线程的使用 线程同步(LOCK和RLOCK) python与mysql数据库交互实现增加和查找 python的格式化输出
  9. 【ubuntu】ubuntu18.04:在处理时有错误发生:ufw E: Sub-process /usr/bin/dpkg returned an error code (1)
  10. SpringSide 4 QuickStart运行Demo