美文网首页
CPU、物理核、逻辑核概念与关系

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

作者: rockops | 来源:发表于2017-11-14 11:49 被阅读1038次

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

    文章将解答如下问题

    • 一个物理核可以分成两个逻辑核,是吗?
    • 我们常说的电脑是8核的,服务器是64核的,指的是逻辑核,还是物理核?
    • 怎么查看Linux服务器的物理核、逻辑核数?

    基础概念

    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/

    相关文章

      网友评论

          本文标题:CPU、物理核、逻辑核概念与关系

          本文链接:https://www.haomeiwen.com/subject/trixvxtx.html