CPU、物理核、逻辑核概念与关系

2017-11-14  本文已影响1038人  rockops

CPU、物理核、逻辑核概念与关系

文章将解答如下问题

基础概念

CPU(Central Processing Unit): 中央处理单元,CPU != 物理核,更 != 逻辑核。
物理核(physical core/processor): 可以看的到的,真实的cpu核,有独立的电路元件以及L1,L2缓存,可以独立地执行指令。
逻辑核(logical core/processor): 在同一个物理核内,逻辑层面的核。(比喻,像动画片一样,我们看到的“动画”,其实是一帧一帧静态的画面,24帧/s连起来就骗过了人类的眼睛,看起来像动起来一样。逻辑核也一样,物理核通过高速运算,让应用程序以为有两个cpu在运算)。
超线程(Hyper-threading, HT):超线程可以在一个逻辑核等待指令执行的间隔(等待从cache或内存中获取下一条指令),把时间片分配到另一个逻辑核。高速在这两个逻辑核之间切换,让应用程序感知不到这个间隔,误认为自己是独占了一个核。
关系: 一个CPU可以有多个物理核。如果开启了超线程,一个物理核可以分成n个逻辑核,n为超线程的数量。

Linux查看cpu信息

cat /proc/cpuinfo

...
processor   : 23                // 逻辑核编号
cpu MHz         : 2299.863     // CPU主频
cache size      : 15360 KB     // L2 cache大小
physical id : 1                 // CPU编号
siblings    : 12                   // 一颗CPU中有多少逻辑核
core id     : 5                 // CPU的物理核编号
cpu cores   : 6                 // 一颗CPU中有多少物理核
...

针对于上边的这个服务器,我们说,它有2颗CPU,每颗CPU中有6个物理核,CPU开启了超线程,每颗CPU中有12个逻辑核。所以,这台服务器共有12个物理核,24个逻辑核。我们通常意义上说的24核,是指逻辑核是24个。

延伸阅读

CPU架构的简要演进,为什么会有双核、多核CPU,可以看这篇文章 http://www.daniloaz.com/en/differences-between-physical-cpu-vs-logical-cpu-vs-core-vs-thread-vs-socket/

上一篇下一篇

猜你喜欢

热点阅读