首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >证明k级管道最多可以比非流水线管道快k倍。

证明k级管道最多可以比非流水线管道快k倍。
EN

Stack Overflow用户
提问于 2018-11-07 09:59:30
回答 1查看 1.2K关注 0票数 2

我大致(抽象地)理解了为什么管道比非流水线管道快一倍(就像这样):

  1. K级流水线将电路分成k个部分。
  2. 每个阶段都有相同的晶体管延迟(理想情况下)
  3. 所以它的速度是K倍。(比如在汽车厂使用传送带系统)

但我无法理解这个数学表达式:

代码语言:javascript
复制
clock cycle time = t 
number of command = n  
speedup = (n*k*t)/((k-1)*t+n*t) = (n*k*t)/(k*t+(n-1)*t)

if n -> infinite: speedup is k  

我不知道的是:((k-1)_t+n_t)是什么意思?

我能理解(nkt)意味着非流水线时间,所以我认为((k-1)*t+n*t)应该是管道时间。

但是,为什么((k-1)*t+n*t)是流水线时间?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-11-07 12:12:02

您是正确的-- (k-1)*t+n*t是在管道中执行n命令的时候。

你应该这样想:

在第一个(k-1)循环(t)中,管道已被填满。之后,0赞扬已经完全执行,但是所有的管道都被填满了。

从现在开始,每个循环t都会有新的命令,它完成了(由于管道效应) ->的执行,即n*t

总之,在(k-1)*t + n*t之后是在管道中执行n命令的时间。

希望这能让事情更清楚!

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53187147

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档