POPPUR爱换

 找回密码
 注册

QQ登录

只需一步,快速开始

手机号码,快捷登录

搜索
查看: 2654|回复: 11
打印 上一主题 下一主题

回头看看: NetBurst的SSE为什么那么强?!

[复制链接]
RacingPHT 该用户已被删除
跳转到指定楼层
1#
发表于 2007-5-28 13:16 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
提示: 作者被禁止或删除 内容自动屏蔽
2#
发表于 2007-5-28 13:31 | 只看该作者
这两个alu在pipeline上是可以并行执行的,port上它们是交叠发射的,可以达到每个周期两个2 flop。
回复 支持 反对

使用道具 举报

RacingPHT 该用户已被删除
3#
 楼主| 发表于 2007-5-28 13:37 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

4#
发表于 2007-5-28 13:43 | 只看该作者
原帖由 RacingPHT 于 2007-5-28 13:16 发表
大家都知道, 其实K8的SSE ALU资源比P4多一倍。K8具有FP_ADD/FP_MUL两个单元与port, 而P4只有一个FP_MUL/ADD。
NetBurst的理论双精度浮点峰值只有1 flop/cycle/core。(MULPD/ADDPD的thoughput都是2 cycle)

而 ...

throughput的定义是相同指令之间的cycle数,并没有说一条ADDPD之后不能跟着一条MULPD。所以,P4的理论峰值是2FLOPS/cycle。
至于为什么P4的efficiency要高于K8,呵呵,我不知道。
回复 支持 反对

使用道具 举报

5#
发表于 2007-5-28 13:48 | 只看该作者
架构图上画的是issue port,不是ALUs。

效率和求解的规模、编译环境有很大的关系。上面的文章是在windows + cygwin下测试出来的,榨取得不够尽。

后来已经采用了Fedora来跑,情况显著改善:

http://www.pcinlife.com/article/cpumb/2006-09-26/1159207275d221_8.html
回复 支持 反对

使用道具 举报

RacingPHT 该用户已被删除
6#
 楼主| 发表于 2007-5-28 13:52 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

RacingPHT 该用户已被删除
7#
 楼主| 发表于 2007-5-28 14:13 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

8#
发表于 2007-5-28 14:27 | 只看该作者
原帖由 RacingPHT 于 2007-5-28 13:52 发表
quite misleading... :)

那么只能说, P4就是128bit ALU了。

不是,无论是FP_ADD还是FP_MUL都是64bit,所以执行一个ADDPD或者一个MULPD都需要两个cycle,而FP_ADD和FP_MUL共享一个port,所以第一个cycle issue一条ADDPD,下一个cycle issue一条MULPD,正好合适。

而Core只需要一个cycle,所以MUL单元和ADD单元被分到了两个Port,每个port都可以每cycle分别issue一条ADDPD/MULPD,所以浮点理论峰值doubel了。
回复 支持 反对

使用道具 举报

9#
发表于 2007-5-28 14:40 | 只看该作者
请问一下各位大大
NetBurst还有可能借尸还魂么
回复 支持 反对

使用道具 举报

RacingPHT 该用户已被删除
10#
 楼主| 发表于 2007-5-28 14:44 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

11#
发表于 2007-5-28 23:33 | 只看该作者
完全看不懂,拜一下楼上诸位走人:blink:
回复 支持 反对

使用道具 举报

12#
发表于 2007-5-29 10:07 | 只看该作者
进来学习学习..................
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-5-14 04:44

Powered by Discuz! X3.4

© 2001-2017 POPPUR.

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