关于 cpu,多核多线程的问题有些不解

2017-11-28 10:10:52 +08:00
 NeverBelieveMe
操作系统的并发处理任务,是通过多个进程,线程之间的切换来实现并发的。那么 4 核 8 线程的处理器,同一时间单位下处理任务量到底是 4 个还是 8 个?
5538 次点击
所在节点    程序员
15 条回复
silencefent
2017-11-28 10:18:48 +08:00
1 核有难 7 核围观
araraloren
2017-11-28 10:19:51 +08:00
mrsatangel
2017-11-28 10:29:07 +08:00
从操作系统角度来看,同一时间可以调度 8 个 task
acgnsstech
2017-11-28 10:30:24 +08:00
CPU 的时间肯定是一定的~~

与其相信超线程 不如提升主频的频率。

一般情况下 做密集型计算 几个核心就开几个线程

intel 的超线程技术 就是扯淡的 效果并不明显,尤其是笔记本上的 CPU。。

超线程 并不适用于密集型计算 只是更好地处理通常的多个任务。。
dychenyi
2017-11-28 10:37:54 +08:00
就当 cpu 是个黑盒 确实有 8 个核不就行了。 大部分应用 8 线程确实比 4 核快就对了。
coderluan
2017-11-28 10:51:50 +08:00
4 核 8 线程的处理器,对于操作系统来说就是 8 核处理器,这样处理任务量就是 8 个,只不过这 8 个的性能做不到 4 个的 2 倍。
Shura
2017-11-28 10:56:12 +08:00
8 个,你可能需要: https://www.zhihu.com/question/29679344
fghjghf
2017-11-28 11:00:38 +08:00
四核八线程。就是 4 个物理核。一瞬间只能有 4 个并行线程。如果进程请求运算的资源达不到瓶颈,那就可以支持 8 个并行。理论上可以有无限个并发的,不过 Linux 只有 65535 个端口号。超线程只不过根据你逻辑处理达不到瓶颈的情况下,可以多出一倍的并行量。如果运行大型项目,还是建议你根据物理核去判断。
enenaaa
2017-11-28 11:10:48 +08:00
所谓 4 核 8 线程。 多出来的 4 个线程是用超线程技术实现的。 对操作系统来说能同时执行 8 个任务。 但在 cpu 层面,也不过是在 io 等待时执行另一个线程,把碎片时间利用起来。对 cpu 来说有几核就能同时执行几个任务。
tidyoux
2017-11-28 11:11:38 +08:00
逻辑上是 8 个,实际上是 4 个。
http://blog.csdn.net/zolalad/article/details/28393209
zjqzxc
2017-11-28 11:15:14 +08:00
看角度

性能:相对于纯 4 核不带 HT 的 cpu 来说,总体性能介于 4 到 8 个之间( intel 早期说法是可以提高 15%~30%)

CPU:超线程的意思是,取指阶段可以并行,但运算阶段不能并行。如果从运算的角度来考虑,仍然是 4 个

操作系统:8 个
3dwelcome
2017-11-28 11:18:19 +08:00
超线程对于多核同事运行的性能,是很伤的。

举个例子,用单核霸者 i3 cpu 运行 super pi, 算 100 万位,看用时。

一个线程是 12 秒完成计算。
二个线程同时计算, 15 秒
三个线程同时计算, 19 秒
四个线程同时计算, 23 秒

而如果你用服务器 cpu, e5 那种,是不会随着线程增加,明显降低性能的。
zado
2017-11-28 12:07:45 +08:00
@3dwelcome 有些运算不能分解并行,单线程是会比多线程快,因为线程切换会花时间,这并不是超线程的副作用。
3dwelcome
2017-11-28 13:36:24 +08:00
@zado 同样的频率下,i3 和 i7 为啥价格差那么多? intel 又不傻,一分价格一分货,i3 超线程只是让电脑有 4 个线程而已,至于性能,intel 微微一笑,呵呵哒,给足钱了才够快。
Neveroldmilk
2017-11-28 15:06:29 +08:00
超线程只是充分利用多级流水线而已,不是真正的八个物理核。所以八核不开超线程的 Ryzen 吊打 6 核 12 线程的 I7。对不起,扯远了。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/410111

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX