qq172851949 发表于 2019-5-8 13:00

关于超线程,真的是四个线程等于一个核心吗

以前看过测试 说一个线程等于一个核心的25% 双核四线程等于2.5核 四核八线程等于5核。 这样算对不对

omnivorous 发表于 2019-5-8 13:08

看应用的,有些应用,关了超线程更快

omnivorous 发表于 2019-5-8 13:09

每个核带几个AVX单元,才是更关键的事情

ivex 发表于 2019-5-8 13:19

没这么绝对吧,只能说在某些限定情况下是这样的。

郑中秋中指指 发表于 2019-5-8 13:32

严格上说,对于intel而言,超线程的处理器大概效能就是单核双线程约等于单核单线程的120%-125%
那么理论上是,四核八线程的相对于(假如存在)五核五线程的是非常接近的,而同架构下四核八线程就比六核六线程弱一些了。
但是终究要看软件优化,有一些软件对于多线程优化不好,或者对于超线程利用不好情况下,那么不会有什么效果,甚至四核四线程高频都能超越四核八线程低频

osborn 发表于 2019-5-8 14:01

超线程跑分还是很厉害的,但是如果搞科学计算,就没啥意义了

crargentino 发表于 2019-5-8 14:07

本帖最后由 crargentino 于 2019-5-8 15:42 编辑

差不多,我试过,开超线程心里爽一点,看上去爽一些,但是实际并没有特别的效果的提升。一定要说的话,差不多就是20%提升最多了。不过我还是开着的。
不过超算上的那些xeon都是关闭超线程的,因为没什么用。他们说的core,就是物理core。不是超线程的一个thread。
打个比方,我要计算12个样本的能量,我是6c12t。
我开启超线程,就是12t,我mpirun -n 12 ... 就是12个线程同时算,每个t计算一个样本。每个线程花费时间为1分钟。我计算完12个样本,就是花了1分钟。
现在我关掉超线程,就是6c6t, 我mpirun -n 6 ...就是6个线程(或者说6个core)同时算,每个core算2个样本。我发现每个核算一个样本只需30秒,但是每个核分了两个样本,所以完成任务还是花了1分钟。6核并行,算完12个样本,还是和之前一样,1分钟。
就说完成相同的计算量,开不开超线程没什么区别。你可以开,也可以不开。所以上超算上基本都是关掉超线程的,因为没什么用。大家各跑各的程序,都是相互独立的。甚至你开了超线程,core的频率会降低,速度变慢都有可能。
当然有些程序可能为超线程优化过,特别是多任务的时候,每个任务花的时间很不一样,有些核完成任务就空在那里了,有些还在执行任务,这个时候可能可以分配新的任务给空闲的线程或者核,这样效率会高一些。


levelten 发表于 2019-5-8 14:23

比如你压片就会明确感受到提升,比如打游戏一般就没多大区别甚至是负效果。
而且本身还得看CPU是否处于瓶颈。

slangmgh 发表于 2019-5-8 14:28


看不同线程数对同一结果的计算能力,增加一个线程大概增加30% - 40%的处理能力。
从4线程到12线程,线程数翻3倍,计算速度快2倍。
2线程到8线程,线程数翻4倍,计算速度快3倍多。


evernever 发表于 2019-5-8 14:33

真正搞科学计算都是关了超线程,直接数物理的core

stopyan 发表于 2019-5-8 15:13

本帖最后由 stopyan 于 2019-5-8 16:01 编辑

qq172851949 发表于 2019-5-8 13:00
以前看过测试 说一个线程等于一个核心的25% 双核四线程等于2.5核 四核八线程等于5核。 这样算对不对

WinRAR等压缩软件从超线程技术受益很大。
以下测试为I7 4712MQ @ 3.2Ghz运行winrar5基准测试的结果。

测试一:双核四线程(禁用一半核心,模拟双核四线程)4.4MB/S

测试二:四核四线程(禁用超线程,模拟真四核)4.8MB/S

测试三:四核八线程(超线程全开)8.1MB/S



隔空@14楼,你说的不对啊,我这里4712官方最高睿频就不降。

slangmgh 发表于 2019-5-8 15:14

刚刚关闭超线程测试了一下,发现对4个线程,打开超线程和关闭超线程运算结果一样,花费的功耗也一样。所以没有看出来任何关闭超线程带来的优势,不知道楼上是否有直接的数据说明关闭超线程有任何好处。

bs340248 发表于 2019-5-8 15:23

slangmgh 发表于 2019-5-8 08:14
刚刚关闭超线程测试了一下,发现对4个线程,打开超线程和关闭超线程运算结果一样,花费的功耗也一样。所以 ...

我租用的超级计算机都是保持超线程开启状态的,但不算计算小时数。

fxj1977 发表于 2019-5-8 15:46

hangen 发表于 2019-5-8 16:19

6核以下的cpu最好还是开着,尤其玩游戏,现在很多游戏都是4线程优化的,如果只有4c4t,系统后台有一些简单的进程也会有影响

levelten 发表于 2019-5-9 15:15

纠正一下,今天实测一套AMD R5-2600, 玩那些单核游戏已经不像R5-1600那样乱卡顿了。

lioulangzhb 发表于 2019-5-9 15:19

关键是看应用能用几个核心

tjxiaojunyi 发表于 2019-5-9 15:40

国际象棋在X210上跑过,还真差不多

wxzxf 发表于 2019-5-9 16:37

这个和应用程序有关,软硬件结合才有用,说白了就是程序本身要针对多线程进行优化,算法要有并行处理能力,如果是单线程应用程序,开再多线程也没毛用

cppbaby 发表于 2019-5-9 18:43

fxj1977 发表于 2019-5-8 15:46
你开了超线程,功耗增加,core的频率会降低

你还是先搞清楚thread 和 process 区别再来瞎扯吧

thankdad 发表于 2019-5-9 18:50

超线程对密集计算没啥帮助,但对日常体验影响不小,用过i3初代的自然会知道,实际体验把上代顶级E8秒出翔了

fxj1977 发表于 2019-5-10 09:03

cppbaby 发表于 2019-5-10 10:28

fxj1977 发表于 2019-5-10 09:03
是你瞎扯吧,哪里说错?

很好,无知者无畏,对你来说进化就是个错误,保持单细胞最好。

cppbaby 发表于 2019-5-10 10:45

fxj1977 发表于 2019-5-10 09:03
是你瞎扯吧,哪里说错?

另外单核不开HT如此厉害,你怎么不直接用Pentium M,原生单核单线程,都不用改bios,来啊,象棋啊

fxj1977 发表于 2019-5-10 14:28

cppbaby 发表于 2019-5-10 15:23

fxj1977 发表于 2019-5-10 14:28
开啦HT,频率就没那么高啦

都2019年了,你还在频率=性能?看来确实需要进化。不过总算进步到了32nm,不再是45nm了

wlq_51nb 发表于 2019-6-3 20:32

刚刚关闭超线程 ,对于多开程序的用户来说 差别挺大的。
关闭超线程 开机同时打开4-5个程序,cpu 就100%占用了。 频率能到3.6GHz
打开后基本上就稳定在50%的占用。





以下为关闭超线程

华表 发表于 2019-6-3 21:39

超线程看程序是否有针对性优化,否则根本发挥不出来。
归根到底,真核数量才是关键,还有就是主频高低。

osborn 发表于 2019-6-3 22:15

本帖最后由 osborn 于 2019-6-3 22:20 编辑

这个高度依赖于软件环境,跑分来看8700K和9700k差别不大,adobe这些应用包括视频编辑这些超线程应该是提升比较大的,游戏应该没有提升,如果做科学计算里面的并行,超线程就没有任何作用,只看物理核心

qmp198596 发表于 2019-6-4 10:27

超线程,以前单核时代Intel整出来的玩意,然后又不搞了,然后又搞起来了,结果后面据说又要搞个反超线程的技术
页: [1]
查看完整版本: 关于超线程,真的是四个线程等于一个核心吗