在流水线这部分的理解中,需要再脑海中绘制一幅图:

横轴是时间在流动,纵向表达的是指令的阶段。这样,斜着往右上角的同色的颜色块是一条指令的执行。用一条平行于纵轴的线从0时开始往右移动,切到的块数就是同一时刻在并行的段。
如图,分为四个阶段,那么前面四个阶梯就是在性能爬坡阶段,直到四个段可以同时并行,这样以后每一个段的执行时间块结束就会有一条指令执行结束。也称作一条指令流出流水线。

吞吐率

定义

单位时间内流水线完成的任务数量。

基本计算公式

TP(ThroughPut)=nTk,n是任务完成数目,Tk是总共用时TP(ThroughPut) = {n \over T_k},n是任务完成数目,T_k是总共用时

在流水线中的计算公式:

TP=n(k+n−1)δtTP = {n \over (k+n-1)\delta t}

解释就是:n个任务在性能爬坡阶段用时k段个时间完成一个指令,后面的n-1条指令会在n-1个时间段内完成,也就是一段时间就会有一条指令流出流水线。

加速比(S)

定义

不使用流水线所用的时间与使用流水线所用的时间比即为加速比。
注意加速比大于1就可以了。

计算

S=knδt(k+n−1)δt=kn(k+n−1)S = {kn\delta t\over (k+n-1)\delta t} = {kn \over (k+n-1)}

简单求这个极限可知,n→∞n \rightarrow \infty 时,S→1S \rightarrow 1

这个极限的意思是:流水线分段数目有限时,对于很多很多任务的加速效果不明显的。但是在正常有限数字内,加速比总是大于1的。

效率

这个有些难以接受或者理解,but,值得try.

定义

流水线的设备利用率被称为流水线的效率。

简单说就是,一条指令将调动不同的部件完成任务。但是在一个设备忙的时候,其他设备可以在忙也可以在休息。理论上,在同一个时刻最大可以有k个部件同时工作。事实上做不到,因为即使是采用流水线也得有一个性能爬坡阶段。

因此这里的计算主要讲的是流水线的设备利用率计算。

流水线中的效率(E)计算

完成n个任务占用的时空区的有效面积与采用流水线完成n个任务所占的时空区面积。

这个概念模拟推演了好几次我才真的明白说的是什么。

有效面积是什么?总面积又是什么?

需要明确的是,有效面积指的是设备真的在工作的那一块。可以画图数格子,也可以这么分析:每一条指令的完成一定用了k个格子,一个格子大小是kδtk\delta t,则有效面积是:nkδtnk\delta t。

再来明确什么是时空区总面积,这个其实也很好理解:每时每刻最大可以有k个设备在工作。那么,总面积就是k⋅Tk,Tk指的是流水线完成任务需要的总时间。k\cdot T_k,T_k指的是流水线完成任务需要的总时间。

我们知道流水线完成任务的时空图是左右有锯齿形的平行四边形,总面积就是补齐左右的倾斜得到的矩形的面积。

那么计算:

E=nkδtkTk=T0kTk==nk+n−1 E = {nk\delta t \over kT_k } = {T_0 \over kT_k = } = {n \over k+n-1}

所以,效率也等于加速比除以段数,即:E=SkE = {S\over k}

即使是流水线,效率也是小于1的。

以上。

流水线的几个指标总结相关推荐

  1. 掌门持续交付流水线大规模实践

    CD 平台是掌门的持续交付系统,流水线功能自 2020 年 3 月在 CD 平台上正式开放,目前已稳定运营一年多,超过 900 个应用启用了流水线功能,应用接入率超 60%,下图展示了流水线功能的关键 ...

  2. 计算机系统 流水线技术

    Python微信订餐小程序课程视频 https://edu.csdn.net/course/detail/36074 Python实战量化交易理财系统 https://edu.csdn.net/cou ...

  3. 每年节省170万美元的文档预览费用,借助机器学习的DropBox有多强​?

    [CSDN 编者按]Dropbox 借助机器学习的预测功能,每年能为公司节省了一百多七十多万美元的基础架构成本.非常了不起的成就.本文,一起来看一看 Dropbox 采用机器学习的经过,以及分析一下其 ...

  4. DropBox:机器学习每年可以为我们节省170万的文档预览费用

    [CSDN 编者按]Dropbox 借助机器学习的预测功能,每年能为公司节省了一百多七十多万美元的基础架构成本.非常了不起的成就.本文,一起来看一看 Dropbox 采用机器学习的经过,以及分析一下其 ...

  5. Google 工作 4 年,我最终还是选择了离开

    点击上方"CSDN",选择"置顶公众号" 关键时刻,第一时间送达! 声明:本文已获作者授权翻译,封面图为付费下载自视觉中国. [CSDN编者按]作为全球领先的科 ...

  6. 计算机组成与体系结构——指令流水线

    计算机组成与体系结构,第6章指令流水线学习 时钟周期.机器周期.指令周期 时钟周期也称为振荡周期,定义为时钟脉冲的倒数,是计算机中最基本的.最小的时间单位. 机器周期,为了便于管理,常把一条指令的执行 ...

  7. 企业MES制造执行系统的分类与应用

    MES系统是一种针对制造型企业的车间生产执行层的信息处理化管理系统.企业MES制造执行系统是由车间数字化的管理子系统及实时管控的工厂子系统构成.它能为企业提供数据库管理.生产管理.资源协调管理.质量监 ...

  8. 如何基于Kubernetes构建完整的DevOps流水线

    前言 关于DevOps是一个很大的话题,它可能既涉及到公司的技术文化构建,也包括开发者技术能力的支持,这次技术干货分享主要是侧重于技术方面,就是如何用Kubernetes来服务好DevOps的流水线. ...

  9. 用Spark机器学习数据流水线进行广告检测

    在这篇文章中,我们Spark的其它机器学习API,名为Spark ML,如果要用数据流水线来开发大数据应用程序的话,这个是推荐的解决方案.关键点: 了解机器学习数据流水线有关内容. 怎么用Apache ...

最新文章

  1. Spring Cloud Alibaba - 09 Ribbon 饥饿加载及其他配置参数解读
  2. nodejs常用指令
  3. 高德机器人的名字是怎么呼叫的_“一键呼叫”上门办服务!龙岗这个“智慧社区”很贴心~...
  4. oracle中如何调用存储过程
  5. vue中使用导出表格功能
  6. 无心剑英译朱自清《匆匆》
  7. gcc mips64编译后无法运行在octeon上运行_V 语言运行hello world程序
  8. 百度头条正式火拼:尔要战,便战!
  9. 对于计算机专业的调查报告,计算机专业调查报告.doc
  10. mysql存储过程实现_原来MySQL的存储过程也可以这么玩?
  11. SQL在线格式化工具
  12. 用 AlphaGo Zero 参加阿里巴巴全球调度算法大赛
  13. Adobe Flash Player32 离线安装包及菁苗软件打开白屏的解决方法
  14. 串口发送字符控制灯亮灭
  15. 给自己的逆向工程阶段性学习感想总结
  16. 安装linux播放器mplayer,smplayer
  17. Python基础+进阶(万字总结,基础案例+执行结果)
  18. 为什么使用服务器端渲染 (SSR)?
  19. 图片·21312312
  20. Paypal支付/回调/退款

热门文章

  1. 驱动多个二相四线制步进电机的Proteus仿真
  2. kafka集群为什么需要三个节点_Kafka突然宕机了?稳住,莫慌!
  3. android 无网络处理布局,Android网络开发
  4. python post json参数,Python requests.post方法中data与json参数区别详解
  5. linux3.10高端内存,Linux内存管理之高端内存映射
  6. python 去除水印_python 利用opencv去除图片水印
  7. linux自动切换tty,Linux 中不适用功能键切换TTY
  8. uni-app android白屏,uniapp页面跳转出现白屏怎么办
  9. 计算机文件不能包含的符号,文件夹的名称不能包括
  10. c+智能指针源码分析_C ++中的智能指针