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

这篇具有很好参考价值的文章主要介绍了1.6流水线:流水线、流水线周期、流水线执行时间、流水线吞吐率、流水线加速比。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

相关参数计算:流水线执行时间计算、流水线吞吐率、流水线加速比等。

流水线

流水线是指在程序执行时多条指令重叠进行操作的一种准并行处理实现技术。各种部件同时处理是针对不同指令而言的,它们可同时为多条指令的不同部分进行工作,以提高各部件的利用率和指令的平均执行速度。

流水线周期

流水线应用过程中,会将需要处理的工作分为N个阶段,最耗时的那一段所消耗的时间称为流水线周期。

流水线执行时间

假设一段流水线。取指=3Δt,分析=2Δt,执行4Δt,Δt这里表示时间单位。

Δδ,是希腊字母表中第四个字母,大写 Δ,小写 δ,英语名称Delta,希腊名称δελτα,中文名称德尔塔,在英语有三角洲的意思。

1.6流水线:流水线、流水线周期、流水线执行时间、流水线吞吐率、流水线加速比
流水线执行时间计算公式分为两种,理论公式和实践公式。

理论公式

t为流水线周期,k为任务分段数量,n为任务个数
理论公式: = 第 1 条指令的执行时间 + ( n − 1 ) × 流水线周期 理论公式:=第1条指令的执行时间+(n-1)×流水线周期 理论公式:=1条指令的执行时间+(n1)×流水线周期
理论公式: ( t 1 + t 2 + . . + t k ) + ( n − 1 ) t 理论公式:(t1+t2+..+tk)+(n-1)t 理论公式:(t1+t2+..+tk)+(n1)t
理论公式: ( t 1 + t 2 + . . + t k − t ) + n t 理论公式:(t1+t2+..+tk-t)+nt 理论公式:(t1+t2+..+tkt)+nt

实践公式

实践公式和理论公式的区别,只在于第一条流水线的建立时间,它会将每一个任务分段时间作为最长段来处理,冗余的时间可以来应付一些突发事件。所以实践公式实际上是稍有扩大,但是量并没有特别大。除了流水线建立时间不同,剩下的(n-1)t是和理论公式一样的。
实践公式: k t + ( n − 1 ) t 实践公式:kt+(n-1)t 实践公式:kt+(n1)t

举例计算流水线执行时间

如:使用流水线技术执行100条指令,每条指令取指2ms,分析4ms,执行1ms,则流水线周期为4ms。
将1个任务的执行过程可分成N个阶段,假设每个阶段完成时间为t,则完成该任务所需的时间为Nt。若以传统的方式,则完成k个任务的时间为kNt;而使用流水线技术执行,且花费的时间是Nt+(k-1)t。也就是说。除了第一个任务需要完整的时间外,其他都通过并行,节省了大量的时间。所以流水线的执行时间可通俗的表达为:

流水线执行时间 = 第 1 条指令的执行时间 + ( n − 1 ) × 流水线周期 流水线执行时间=第1条指令的执行时间+(n-1)×流水线周期 流水线执行时间=1条指令的执行时间+(n1)×流水线周期
注意:n表示需要处理的任务数量

考试时,又需要注意一个细节,流水线的执行时间计算,进一步可以分为理论情况与实际情况两种不同的方式。

比如:
某计算机系统,一条指令的执行时间需要经历取指(2ms),分析(4ms),执行(1ms)三个阶段,现要执行100条指令,利用流水线技术需要多长时间?

理论上来说,1条指令的执行时间为:2ms+4ms+1ms=7ms
所以:理论流水线执行时间=2ms+4ms+1ms+(100-1)×4ms=403ms

而实际上,真正做流水线处理时,考虑到处理的复杂性,会将指令的每个执行阶段的时间都统一为流水线周期,即1条指令的执行时间为:4ms+4ms+4ms=12ms
所以:实际流水线执行时间=4ms+4ms+4ms+(100-1)×4ms=408ms

考试时80%以上的概率采用理论公式计算,如果理论公式计算结果无正确选项,再用实际公式计算。

流水线吞吐率

流水线吞吐率(Through Put Rate,TP)是指在单位时间内流水线所完成的任务数量或输出的结果数量。
计算流水线吞吐率的最基本的公式如下:与流水线执行时间相关
T P = 指令条数 流水线执行时间 TP=\frac{指令条数}{流水线执行时间} TP=流水线执行时间指令条数
流水线最大吞吐率:与流水线分段相关,等于流水线周期的倒数
T P m a x = l i m N → + ∞ n ( k + n − 1 ) t = 1 t TPmax=lim_{N\to+\infty}\frac{n}{(k+n-1)t}=\frac{1}{t} TPmax=limN+(k+n1)tn=t1

举例计算流水线吞吐率

假设一段流水线。取指=3Δt,分析=2Δt,执行4Δt,Δt这里表示时间单位。10条指令的吞吐率?最大吞吐率?
流水线吞吐率“
T P = 指令条数 流水线执行时间 = 10 ( 3 Δ t + 2 Δ t ) + 10 × 4 = 10 45 = 2 9 Δ t TP=\frac{指令条数}{流水线执行时间}=\frac{10}{(3Δt+2Δt)+10×4}=\frac{10}{45}=\frac{2}{9Δt} TP=流水线执行时间指令条数=(t+t)+10×410=4510=t2
流水线最大吞吐率:
T P m a x = 1 t = 1 4 Δ t TPmax=\frac{1}{t}=\frac{1}{4Δt} TPmax=t1=t1

流水线加速比

完成同样一批任务,不使用流水线所用的时间与使用流水线所用时间之比称为流水线的加速比。计算流水线加速比的基本公式如下:
S = 不使用流水线执行时间 使用流水线执行时间 S=\frac{不使用流水线执行时间}{使用流水线执行时间} S=使用流水线执行时间不使用流水线执行时间文章来源地址https://www.toymoban.com/news/detail-491141.html

到了这里,关于1.6流水线:流水线、流水线周期、流水线执行时间、流水线吞吐率、流水线加速比的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 计算机体系结构基础知识介绍之缓存性能的十大进阶优化之减少命中时间和流水线访问和多组缓存增加带宽(三)

    路预测是一种高速缓存优化技术,它在高速缓存中保存额外的位来预测下一次高速缓存访问的路(或者组内的块)。这种预测可以提前设置多路选择器来选择期望的块,并且在那个时钟周期内,只进行一次标记比较,同时读取高速缓存数据。如果预测正确,高速缓存访问延迟

    2024年02月12日
    浏览(30)
  • 8位加法器的流水线设计(2级流水、四级流水)

    思考:流水线的设计是为了提高频率,在一个耗时比较长的组合逻辑中,加入寄存器, 可以将这个较长的组合逻辑分裂几份,从而提升主频,缺点是增加了寄存器的资源。 二级流水线的加法器的设计思想如下: 在第一个周期完成低四位的加法计算,使用一个四位加法器即可

    2024年02月11日
    浏览(30)
  • jenkins流水线

    1、 二、 三、 四、 五、 六、  

    2024年02月05日
    浏览(45)
  • 云效-流水线(基本教程)

    阿里云效地址: https://accountid-devops.aliyun.com/ 代码在码云, 服务器在腾讯云, 代码是个聚合代码 1. 选择适合自己的模板 2. 创建码云链接 3. 选择代码仓库, 分支即可下一步 4. 部署,主机部署 5. 保存运行(获取打包路径) 6. 完善部署命令 按自己的需求进行填写, 包括打包成docker镜像

    2024年02月09日
    浏览(38)
  • 【Jenkins】pipeline流水线

    流水线既能作为任务的本身,也能作为jenkinsfile,使用流水线可以让我们的任务从ui手动操作,转换为代码化,像docker的dockerfile一样,从shell命令到配置文件,更适合大型项目,可以让团队其他开发者同事参与进来,同时也可以编辑开发jenkinswebui不能完成的复杂的构建逻辑,作

    2024年02月09日
    浏览(52)
  • Jenkins的流水线详解

    来源:u.kubeinfo.cn/ozoxBB 什么是流水线 声明式流水线 Jenkinsfile 的使用 jenkins 有 2 种流水线分为 声明式流水线 与 脚本化流水线 ,脚本化流水线是 jenkins 旧版本使用的流水线脚本,新版本 Jenkins 推荐使用声明式流水线。文档只介绍声明流水线。 声明式流水线 在声明式流水线语

    2024年02月11日
    浏览(33)
  • Jenkins流水线怎么做?

    问CHAT:Jenkins流水线怎么做? CHAT回复:Jenkins流水线是一种创建、测试和部署应用程序的方法。以下是为Jenkins创建流水线的步骤: 1. 安装Jenkins:首先你需要在你的服务器上安装Jenkins。这个过程可能会根据你的操作系统有所不同。 2. 安装必要的插件:为了使流水线工作,你需

    2024年01月24日
    浏览(39)
  • UnityShader(一)渲染流水线

    目录 一、什么是渲染流水线 二、渲染流程的三个概念性阶段 1.应用阶段(Application Stage) 一、准备好场景数据 二、粗粒度剔除 三、设置渲染状态 2.几何阶段(Geometry Stage) 3.光栅化阶段(Rasterizer Stage) 三、CPU和GPU的通信 1.把数据加载到显存中 2.设置渲染状态 3.调用Draw Ca

    2024年02月02日
    浏览(34)
  • CI/CD流水线实战

    不知道为什么,现在什么技术都想学,因为我觉得我遇到了技术的壁垒,大的项目接触不到,做的项目一个字 辣* 。所以,整个人心浮气躁,我已经得通过每天的骑行和长跑缓解这种浮躁了。一个周末,我再次宅在了家里,学习了一下 CICD 。 先分享一下 shigen 的学习视频资源

    2024年02月12日
    浏览(49)
  • Jenkins 流水线多阶段构建

    Jenkins流水线配置遇到 无法识别的。需要使用 自定义环境 项。 比如官网的在流水线中使用Docker Started by remote host 172.17.0.1 Obtained Jenkinsfile from git http://10.99.20.51:8082/root/java-devops-demo.git org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed: WorkflowScript: 28: Invalid agent type “

    2024年04月22日
    浏览(25)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包