POPPUR爱换

标题: Conroe支持反超线程技术,已经实现。 [打印本页]

作者: OST_2005    时间: 2006-6-24 07:36
提示: 作者被禁止或删除 内容自动屏蔽
作者: OST_2005    时间: 2006-6-24 07:38
提示: 作者被禁止或删除 内容自动屏蔽
作者: ultraghost    时间: 2006-6-24 07:40
提示: 作者被禁止或删除 内容自动屏蔽
作者: elisha    时间: 2006-6-24 07:42
刚刚看到Multiplexing技术,原来就是这个了阿
好妖孽的技术
作者: elisha    时间: 2006-6-24 08:03
忘记再哪儿看见的了,结果找了半天都找不到
PS。RWT上也没有,偶刚刚把图片发上去了,^_^
作者: fayerlxy    时间: 2006-6-24 09:15
google结果

看来芯片组/BIOS方面早有准备
作者: OST_2005    时间: 2006-6-24 09:31
提示: 作者被禁止或删除 内容自动屏蔽
作者: Jason21    时间: 2006-6-24 10:01
不是这么戏剧性吧。
作者: ITANIUM2    时间: 2006-6-24 10:13
晕, 几天不来就有这么多新东西
作者: eiceman    时间: 2006-6-24 10:18
原帖由 OST_2005 于 2006-6-24 09:31 发表
对.新版原装Intel 975x也有这个选项的.

Rev304?没有见过BIOS有这个啊。:blink:
作者: smartcub    时间: 2006-6-24 10:23
Ha,双核的Conroe是不是就含有反超线程技术?那AMD的K10还怎么卖啊?
作者: FENG950    时间: 2006-6-24 10:29
就没有人来讨论一下这技术的可行性吗?直接来的话,我认为是不可能的,除非是配合编译器一类的东西将串行程序做一定的并行化处理。
作者: smartcub    时间: 2006-6-24 10:33
Multiplexing,多路复用,这个==AMD's Anti-HT么?
作者: elisha    时间: 2006-6-24 10:45
如果可行的话,为什么conroe是4issue而不是8issue16issue
作者: gzXW    时间: 2006-6-24 10:47
原帖由 FENG950 于 2006-6-24 10:29 发表
就没有人来讨论一下这技术的可行性吗?直接来的话,我认为是不可能的,除非是配合编译器一类的东西将串行程序做一定的并行化处理。


http://www.poweruser.com.tw/news ... =590&NP_ID=1528
作者: xreal    时间: 2006-6-24 10:47
:devil:单核没人要喽。彻底沦为低端
作者: FENG950    时间: 2006-6-24 10:50
原帖由 gzXW 于 2006-6-24 10:47 发表


http://www.poweruser.com.tw/news ... =590&NP_ID=1528

早看过了,这不就是说的利用编译器的自动并行化嘛。
作者: jhj9    时间: 2006-6-24 11:32
原帖由 eiceman 于 2006-6-24 10:18 发表

Rev304?没有见过BIOS有这个啊。:blink:


有,最新的 1181 bios带这个选项,我已经看见过了
作者: fayerlxy    时间: 2006-6-24 11:50
原帖由 elisha 于 2006-6-24 10:45 发表
如果可行的话,为什么conroe是4issue而不是8issue16issue


普通用户谁会在乎issue

专业人士谁会被这个唬弄?

无论AMD还是intel,这种猜测线程技术的有效性估计有限的啦,譬如某仁兄提过的superPi,我就不相信能有什么提升。
作者: FENG950    时间: 2006-6-24 11:58
原帖由 fayerlxy 于 2006-6-24 11:50 发表


普通用户谁会在乎issue

专业人士谁会被这个唬弄?

无论AMD还是intel,这种猜测线程技术的有效性估计有限的啦,譬如某仁兄提过的superPi,我就不相信能有什么提升。

效率肯定也低下了,猜错的几率大概也不小,就是不知道性能会不会下降又会降多少。
作者: Edison    时间: 2006-6-24 12:02
原帖由 FENG950 于 2006-6-24 11:58 发表

效率肯定也低下了,猜错的几率大概也不小,就是不知道性能会不会下降又会降多少。


猜测错几乎不会有损失,因为2nd thread是在另一个原本是睡觉的core上执行的。
作者: fayerlxy    时间: 2006-6-24 12:07
原帖由 Edison 于 2006-6-24 12:02 发表


猜测错几乎不会有损失,因为2nd thread是在另一个原本是睡觉的core上执行的。



似乎这个技术最大的优势就是减少分支预测失败损失了,难怪据说conroe的L1之间有隐秘通道,再加上L2共享,ms这种技术intel比AMD占便宜
作者: FENG950    时间: 2006-6-24 12:13
原帖由 Edison 于 2006-6-24 12:02 发表


猜测错几乎不会有损失,因为2nd thread是在另一个原本是睡觉的core上执行的。

理论上而已,如果猜错了,即两个并行线程间有依赖,还要按顺序取消猜测执行过的写操作,会不会出现一个核心要等待另一个取消完了后才能执行对应线程的情况?
作者: spinup    时间: 2006-6-24 12:29
原帖由 FENG950 于 2006-6-24 12:13 发表

理论上而已,如果猜错了,即两个并行线程间有依赖,还要按顺序取消猜测执行过的写操作,会不会出现一个核心要等待另一个取消完了后才能执行对应线程的情况?

看意思其中一条线程的结果并不真正执行写入等操作,如果预测错误结果就被废弃的,不用取消.

也就是利用第二个核心,暴力操作原来不一定要执行的指令.
比如一个程序有两个分支,可以在标志结果还没出来时就开始执行这两个分支,等跳转标志有结果了,就根据结果废弃一个分支的运行结果.
作者: gzXW    时间: 2006-6-24 12:35
原帖由 spinup 于 2006-6-24 12:29 发表

看意思其中一条线程的结果并不真正执行写入等操作,如果预测错误结果就被废弃的,不用取消.

也就是利用第二个核心,暴力操作原来不一定要执行的指令.
比如一个程序有两个分支,可以在标志结果还没出来时就开始执 ...



不知CPU的功耗会因此而增加多少。
作者: FENG950    时间: 2006-6-24 12:36
原帖由 spinup 于 2006-6-24 12:29 发表

看意思其中一条线程的结果并不真正执行写入等操作,如果预测错误结果就被废弃的,不用取消.

也就是利用第二个核心,暴力操作原来不一定要执行的指令.
比如一个程序有两个分支,可以在标志结果还没出来时就开始执 ...

安腾?但是这和分支不能完全划等号吧?只是程序段被拆分的部分而已。如果一点结果都不写的话,那一个线程又如何执行下去呢?一个指令的执行结果不被写回,下一个指令如何运行?
作者: spinup    时间: 2006-6-24 12:46
原帖由 FENG950 于 2006-6-24 12:36 发表

安腾?但是这和分支不能完全划等号吧?只是程序段被拆分的部分而已。如果一点结果都不写的话,那一个线程又如何执行下去呢?一个指令的执行结果不被写回,下一个指令如何运行?

写回reg file和L1而不写回内存,缓存行用特别的标记,如果废弃的话就整体废弃.如果有效就改为正常的缓存行标记.

顺便说一下,这个是根据edison贴的帖子估计AMD的策略.intel的策略如何还不清楚.
作者: elisha    时间: 2006-6-24 12:49
原帖由 fayerlxy 于 2006-6-24 11:50 发表


普通用户谁会在乎issue

专业人士谁会被这个唬弄?

无论AMD还是intel,这种猜测线程技术的有效性估计有限的啦,譬如某仁兄提过的superPi,我就不相信能有什么提升。

我不是这种意思,我是想说:为什么分成2个核
如果可行的话,直接提高解码器的并行度就是了
作者: FENG950    时间: 2006-6-24 12:54
原帖由 spinup 于 2006-6-24 12:46 发表

写回reg file和L1而不写回内存,缓存行用特别的标记,如果废弃的话就整体废弃.如果有效就改为正常的缓存行标记.

顺便说一下,这个是根据edison贴的帖子估计AMD的策略.intel的策略如何还不清楚.

这种写法也是要撤销的吧?即是已经被执行的线程发现错误后要回滚到初始态再重新执行,我的意思就是:这是要时间的吧?
作者: spinup    时间: 2006-6-24 12:57
原帖由 elisha 于 2006-6-24 12:49 发表

我不是这种意思,我是想说:为什么分成2个核
如果可行的话,直接提高解码器的并行度就是了

单核心的投机执行是早已经应用的,P4就很典型.
这个技术应该是粒度更粗一些的投机执行,利用多核隔离不同的分支可能反而更好.
作者: spinup    时间: 2006-6-24 13:11
原帖由 FENG950 于 2006-6-24 12:54 发表

这种写法也是要撤销的吧?即是已经被执行的线程发现错误后要回滚到初始态再重新执行,我的意思就是:这是要时间的吧?

一个做工具的工厂,生产刀叉.正常工序是做出粗模,加上柄,在开刀锋.一组人做,可以先开刀锋再加柄,这就是乱序执行.也可以一边只管加柄,另一边只管开刀锋,如果需要100把刀,开刀锋的做完,却发现做了120个粗模,加了120个柄,结果浪费20个,这个就是细粒度的投机执行.

如果有订单,却没说是要刀还是要叉,工期又赶得紧.反正人多材料多,两拨人,一拨做刀,另一拨做叉.等订单消息落实是要刀,那做刀的继续做,而做叉的就把已经做了的统统回炉.这个就是粗粒度的投机执行.
作者: FENG950    时间: 2006-6-24 14:00
原帖由 spinup 于 2006-6-24 13:11 发表

一个做工具的工厂,生产刀叉.正常工序是做出粗模,加上柄,在开刀锋.一组人做,可以先开刀锋再加柄,这就是乱序执行.也可以一边只管加柄,另一边只管开刀锋,如果需要100把刀,开刀锋的做完,却发现做了120个粗模,加了12 ...

你说的倒是分支的情况更合适,一个两个路径的分支,总有一条是对的,因此可以像安腾那样倚仗庞大的执行资源全部执行,反正总有一个是对的,对的可以继续执行而错的丢掉也无所谓。但是这里讨论的猜测多线程,是把程序段并行化后让多个线程来执行,换句话说这些线程都是需要的。一前一后两个部分,现在被分派到两个可以同时执行的线程上,分别交由核心0和核心1执行,但是执行结果出来后却发现两者是有依赖关系的,核心1就不得不回滚执行过的线程,让其回复到初始态,重新交由核心0,根据前一条线程的结果继续执行,换句话说核心0在此时会有一个等待另一个核心回滚并重新提交线程的过程,这恐怕就不是浪费一个核心的一次运算那么简单了,另一个也要受累了吧?
作者: Bohr    时间: 2006-6-24 14:08
提示: 作者被禁止或删除 内容自动屏蔽
作者: RacingPHT    时间: 2006-6-24 14:10
提示: 作者被禁止或删除 内容自动屏蔽
作者: hopetoknow2    时间: 2006-6-24 14:33
原帖由 RacingPHT 于 2006-6-24 14:10 发表
谁在做这个程序段并行化呢?
二进制执行程序又如何体现出结构化的分块?..

要对付密集分支?那是找死, 开销够死好几回了


需要插入同步指令的, 怎么插,如何插,插在什么地方, 那几乎等于瞎蒙, 插多了是有代价的, 而不是白用的,插少了没有用,插错地方更糟。

不修改二进制程序码,想在分离很严重的X2上使用“反超线程”? 是有代价的。 所以经常需要关闭“反超线程”。


http://we.pcinlife.com/redirect. ... lastpost#getnewpost
作者: RacingPHT    时间: 2006-6-24 14:41
提示: 作者被禁止或删除 内容自动屏蔽
作者: zacard    时间: 2006-6-24 14:59
提示: 作者被禁止或删除 内容自动屏蔽
作者: hopetoknow2    时间: 2006-6-24 15:26
必须要事先改单线程程序为多线程程序

到了X2处理器肯定看到的还是多线程程序。  X2没这个能耐   

X2看到单线程,自己能把它变成多线程,然后执行吗?答案是X2没有这个火星技术。
作者: BOSS    时间: 2006-6-24 16:47
这个和反超线程是两回事吧,不过是多核心对多线程的优化执行而已。
作者: FENG950    时间: 2006-6-24 16:50
原帖由 BOSS 于 2006-6-24 16:47 发表
这个和反超线程是两回事吧,不过是多核心对多线程的优化执行而已。

要不一个线程还真能上两个核心执行?
作者: hopetoknow2    时间: 2006-6-24 16:51
原帖由 BOSS 于 2006-6-24 16:47 发表
这个和反超线程是两回事吧,不过是多核心对多线程的优化执行而已。

说的对,是啊--cho那个“AMD的反向线程技术(speculatively executing threads of instructions) ”不过是多核心对多线程的优化执行而已
http://we.pcinlife.com/redirect. ... lastpost#getnewpost
作者: hopetoknow2    时间: 2006-6-24 16:53
原帖由 FENG950 于 2006-6-24 16:50 发表

要不一个线程还真能上两个核心执行?

Intel提出的技术, 倒是真的是说过一个逻辑线程在多个物理线程硬件上执行。
作者: FENG950    时间: 2006-6-24 17:05
原帖由 hopetoknow2 于 2006-6-24 16:53 发表

Intel提出的技术, 倒是真的是说过一个逻辑线程在多个物理线程硬件上执行。

不是吧,Intel恰恰就是说的结合编译技术的猜测执行吗?就是那个PowerUser上说的Mitosis吧。
作者: hopetoknow2    时间: 2006-6-24 17:10
原帖由 FENG950 于 2006-6-24 17:05 发表

不是吧,Intel恰恰就是说的结合编译技术的猜测执行吗?就是那个PowerUser上说的Mitosis吧。

我得到的信息肯定和你不同啦。Intel自然还说过另外一种关于实现推测线程的话, 而你那方法是人所皆知的一种。
作者: BOSS    时间: 2006-6-24 17:11
个人觉得反HT和HT一样都需要高频执行单元,K8和Core架构玩这个还太枣。
作者: FENG950    时间: 2006-6-24 17:19
原帖由 hopetoknow2 于 2006-6-24 17:10 发表

我得到的信息肯定和你不同啦。Intel自然还说过另外一种关于实现推测线程的话, 而你那方法是人所皆知的一种。

无论如何实现,最终肯定是用多个线程承载程序段的几个部分,其实还是多个线程的同时运行。
作者: whj788    时间: 2006-7-7 19:55
提示: 作者被禁止或删除 内容自动屏蔽
作者: potomac    时间: 2006-7-7 21:25
提示: 作者被禁止或删除 内容自动屏蔽




欢迎光临 POPPUR爱换 (https://we.poppur.com/) Powered by Discuz! X3.4