POPPUR爱换

 找回密码
 注册

QQ登录

只需一步,快速开始

手机号码,快捷登录

搜索
查看: 8691|回复: 35
打印 上一主题 下一主题

关于superpipeline

[复制链接]
跳转到指定楼层
1#
发表于 2009-9-11 21:49 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
今天看量化的时候发现,superpipeline似乎并非是使用更长的ALU,而是将周期更加细化,让本来需要n个周期就可以经过的指令,使其需要更多周期才可以跑过,我不太明白这到底增加了什么,直接来了一句可以带来更高的频率,这种细分有啥意义吗?鄙鱼愚拙无法通晓,望高人解答
2#
发表于 2009-9-11 22:23 | 只看该作者
stage 之间间距减少,频率就比较容易提高了。
回复 支持 反对

使用道具 举报

3#
 楼主| 发表于 2009-9-11 23:20 | 只看该作者
本帖最后由 跳海自殺的鱼 于 2009-9-11 23:43 编辑

2# Edison

恩,可是E大,这样有啥用吗?就是让频率看起来高,那性能上有啥提升吗,这点希望E大能详细讲讲,3Q了
回复 支持 反对

使用道具 举报

4#
发表于 2009-9-12 01:06 | 只看该作者
外行随便回帖,流水线级数提高,就是说在1个指令还没完成的时候,可以吞吐其他指令了吧..
这也带来了分支预测失败的风险啊..
不管流水线级数多少,如果1个时钟周期能吞1个指令并且得出1个指令的结果,那不考虑分支的话,就是核算的呀..
回复 支持 反对

使用道具 举报

5#
发表于 2009-9-12 01:27 | 只看该作者
对于数据吞吐率先决的应用就非常适合,如果是有大量分支的话,例如国际象棋什么的,那就比较凄凉了。
回复 支持 反对

使用道具 举报

6#
 楼主| 发表于 2009-9-12 12:39 | 只看该作者
忽然豁然开朗。。。。。
回复 支持 反对

使用道具 举报

7#
发表于 2009-9-12 14:08 | 只看该作者
几年前的一次面试被问过这个问题. 简单的说就是pipeline级数增加, 不过每级pipeline的delay减少, 主频能提高. 长pipeline有助于explore ILP. Pentium IV 是个极端. 记得Intel在ISCA01还是02上面有篇文章论证pipeline级数到40-50可以达到最优. 不过Pentium IV最后死在power wall前面. 其实还有AMD K9, 最后内部cancel了, 外人不知道. 所以这么多年了AMD的architecture还都是从K8上面衍生出来的.
回复 支持 反对

使用道具 举报

8#
发表于 2009-9-12 14:13 | 只看该作者
外行随便回帖,流水线级数提高,就是说在1个指令还没完成的时候,可以吞吐其他指令了吧..
这也带来了分支预测失败的风险啊..
不管流水线级数多少,如果1个时钟周期能吞1个指令并且得出1个指令的结果,那不考虑分支的话, ...
defia 发表于 2009-9-12 01:06


分支是有影响, 不过CPU的branch prediction效率都还算高, 很多benchmark的branch prediction都有95%+的准确率. 所以影响有限.
流水线级数多也意味每级的FO4延迟数少, 这样频率可以提高. 即便一个周期还是完成一条指令, 频率的提高也能提高性能. 别忘了CPU的好坏取决于execution time, 不是IPC.
回复 支持 反对

使用道具 举报

9#
发表于 2009-9-12 15:10 | 只看该作者
请教一个问题,在SMT情况下,比如Alpha21464那种8Thread SMT情况下,如何保证一个好的BTB或是PHT效果?

另外对于多层分支嵌套即便是98%也会大打折扣,而这种多层分支嵌套好像比较普遍(当然这里不考虑编译器帮忙的效果),不知道有什么好办法?

另外,Value Predication在10年前左右大概热过一阵阵,不知道现在如何了,有什么新进展么?当然,Speculated Memory Load可以看做值预测的一种应用,但是除此外还有更广泛的应用么?不限于桌面处理器。
回复 支持 反对

使用道具 举报

RacingPHT 该用户已被删除
10#
发表于 2009-9-12 23:38 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

11#
发表于 2009-9-13 02:20 | 只看该作者
我来解释一下

就说最简单的情况吧,5  Stage的经典Pipeline, IF取指-〉ID译码-〉RF读寄存器-〉EX执行-〉WB写回

一般来说最经典的预测器会放在ID,应为解码以后才能知道是否是Branch指令。而Branch是否Taken,则是要Branch指令执行完成以后,而Branch执行会发生在EX Stage。所以在这种流水线里面如果branch Predication Miss的话,那么就会导致从IF到EX之间4个Stage的指令惩罚,而不是惩罚5个Stage的指令。这一理论可以推广到20 Stage Pipeline上。
回复 支持 反对

使用道具 举报

12#
发表于 2009-9-15 13:46 | 只看该作者
ic.expert says well. 95% 是说95%的branch指令都被准确预测, 流水线一切照常. 剩下5%的情况miss prediction, 需要drain pipeline. 所有在该branch instruction之后的指令(那些都是speculated的)都要扔掉. 这些就是penalty. 相当于一个reset, 然后一切从正确的path重新开始. 这个penalty和branch prediction的准确率无关, 是architecture决定的.

我也是懂一些而已, 互相学习.

"分支是有影响, 不过CPU的branch prediction效率都还算高, 很多benchmark的branch prediction都有95%+的准确率. 所以影响有限."

我是外行,请教一下
对于一个20 stage的处理器来说,95%的预测成功率意味着每个br ...
RacingPHT 发表于 2009-9-12 23:38
回复 支持 反对

使用道具 举报

13#
发表于 2009-9-15 15:11 | 只看该作者
楼上大牛说的深入浅出!!!

分支预测的主要问题在于它是和Shadow Register 技术绑定的,没有Shadow Register就不能在Miss Prediction时候还原现场。而在Inorder Pipeline上作Shadow Register的代价太大。对于OOO来说,Shadow Reigster可以和Reigster Renaming技术融合,尤其是基于CAM的Register Renaming Table,支持8层预测深度和16层预测深度都没有什么太大的Cost区别。

所以想请教lik大牛一个问题,LRB用的P54c上分支预测能支持几层预测深度?好在X86这种CISC的寄存器数量不多,现在精体管又很便宜。
回复 支持 反对

使用道具 举报

14#
发表于 2009-9-15 16:49 | 只看该作者
stage 之间间距减少,频率就比较容易提高了。
Edison 发表于 2009-9-11 22:23


半桶水
super pipeline跟clock freq有毛关系!
回复 支持 反对

使用道具 举报

15#
发表于 2009-9-15 17:17 | 只看该作者
半桶水
super pipeline跟clock freq有毛关系!
LinuxIsHard 发表于 2009-9-15 16:49


pipeline stage 和频率有没有关系不是你这句话能改变的吧。
回复 支持 反对

使用道具 举报

16#
发表于 2009-9-15 17:28 | 只看该作者
本帖最后由 LinuxIsHard 于 2009-9-15 17:30 编辑

我是说 super pipeline这种Arch 和 clk freq, 你没看懂?如果你说行, 我倒想请教super pipeline如何提升clk freq
回复 支持 反对

使用道具 举报

17#
发表于 2009-9-15 18:03 | 只看该作者
传统的 pipelined 就是 IF/ID、memory read、EX、Memory Write 这样基本的 4、5 个 stage,Super Pipelined 就是把这些 stage 切得更细,至于多少个 stage 才算是 super pipelined 则很难说了,但是目前只有 4、5 个 stage 的主流 CPU 已经比少了。

把 stage 切细的目的就是让 cycle time 缩小。

你不会是把 super pipelined 看成是 super scalar 吧。
回复 支持 反对

使用道具 举报

18#
发表于 2009-9-15 18:38 | 只看该作者
很明显你对概念就不理解
super pipeline不是由stage数目来决定的,完全2回事
更别说super scalar了
回复 支持 反对

使用道具 举报

19#
发表于 2009-9-15 18:44 | 只看该作者
高级

和P4有点像?
回复 支持 反对

使用道具 举报

20#
发表于 2009-9-15 18:50 | 只看该作者
这么说吧,你把你认为正确的 super pipeline 定义说出来好了。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

广告投放或合作|网站地图|处罚通告|

GMT+8, 2025-4-17 16:19

Powered by Discuz! X3.4

© 2001-2017 POPPUR.

快速回复 返回顶部 返回列表