美文网首页
2022-11-24查看服务器的cpu、核心、线程

2022-11-24查看服务器的cpu、核心、线程

作者: 麦冬花儿 | 来源:发表于2022-11-23 08:45 被阅读0次

    linux 的cpu 信息及线程相关的信息储存于/proc/cpuinfo 文件中,我们可以根据名称查看。参考:https://www.cnblogs.com/yoyoblogs/p/11289981.html参考:https://baijiahao.baidu.com/s?id=1601592414830352193&wfr=spider&for=pc

    背景知识

    参考:https://zhuanlan.zhihu.com/p/86855590

    物理 cpu 数(physical cpu)

    指主板上实际插入的 cpu 硬件个数(socket)。(但是这一概念经常被泛泛的说成是 cpu 数,这很容易导致与 core 数,processor 数等概念混淆,所以此处强调是物理 cpu 数)。由于在主板上引入多个 cpu 插槽需要更复杂的硬件支持(连接不同插槽的 cpu 到内存和其他资源),通常只会在服务器上才这样做。在家用电脑中,一般主板上只会有一个 cpu 插槽。

    主频 /Hz

    这个表示的是CPU 内核心的时钟频率,我们可以将其理解为运算速度。

    类比于人类,可以理解为,主频越高,力量越大。

    image

    核心(core)

    一开始,每个物理 cpu 上只有一个核心(a single core),对操作系统而言,也就是同一时刻只能运行一个进程/线程。为了提高性能,cpu 厂商开始在单个物理 cpu 上增加核心(实实在在的硬件存在),也就出现了双核心 cpu(dual-core cpu)以及多核心 cpu(multiple cores),这样一个双核心 cpu 就是同一时刻能够运行两个进程/线程的。

    线程 (thread)

    同时多线程技术(simultaneous multithreading)和 超线程技术(hyper–threading/HT)

    本质一样,是为了提高单个 core 同一时刻能够执行的多线程数的技术(充分利用单个 core 的计算能力,尽量让其“一刻也不得闲”)。simultaneous multithreading 缩写是 SMT,AMD 和其他 cpu 厂商的称呼。hyper–threading 是 Intel 的称呼,可以认为 hyper–threading 是 SMT 的一种具体技术实现。在类似技术下,产生了如下等价术语:

    • 虚拟 core:virtual core
    • 逻辑 processer:logical processor
    • 线程:thread

    所以可以这样说:某款采用 SMT 技术的 4 核心 AMD cpu 提供了 8 线程同时执行的能力;某款采用 HT 技术的 2 核心 Intel cpu 提供了 4 线程同时执行的能力。

    查看信息

    • cpu个数

    通过physical id 记录:

    grep 'physical id' /proc/cpuinfo | sort -u
    # -u 相当于uniq 处理
    
    

    或者直接显示计数:

    grep 'physical id' /proc/cpuinfo | sort -u | wc -l
    2
    
    
    • 核心数

    我们可以直接查看每个物理cpu 的:

    $ grep 'cpu cores' /proc/cpuinfo | sort -u
    cpu cores : 24
    
    

    看一下核心中的记录情况:

    $ grep 'core id' /proc/cpuinfo
    core id  : 0
    core id  : 1
    core id  : 2
    core id  : 3
    core id  : 4
    core id  : 5
    core id  : 6
    core id  : 8
    core id  : 10
    core id  : 11
    core id  : 12
    core id  : 13
    core id  : 16
    core id  : 17
    core id  : 18
    core id  : 19
    core id  : 20
    core id  : 21
    core id  : 24
    core id  : 25
    core id  : 26
    core id  : 27
    core id  : 28
    core id  : 29
    core id  : 0
    core id  : 1
    core id  : 2
    core id  : 3
    core id  : 4
    core id  : 5
    core id  : 6
    core id  : 8
    core id  : 9
    core id  : 10
    core id  : 11
    core id  : 12
    core id  : 13
    core id  : 16
    core id  : 17
    core id  : 18
    core id  : 19
    core id  : 20
    core id  : 21
    core id  : 25
    core id  : 26
    core id  : 27
    core id  : 28
    core id  : 29
    core id  : 0
    core id  : 1
    core id  : 2
    core id  : 3
    core id  : 4
    core id  : 5
    core id  : 6
    core id  : 8
    core id  : 10
    core id  : 11
    core id  : 12
    core id  : 13
    core id  : 16
    core id  : 17
    core id  : 18
    core id  : 19
    core id  : 20
    core id  : 21
    core id  : 24
    core id  : 25
    core id  : 26
    core id  : 27
    core id  : 28
    core id  : 29
    core id  : 0
    core id  : 1
    core id  : 2
    core id  : 3
    core id  : 4
    core id  : 5
    core id  : 6
    core id  : 8
    core id  : 9
    core id  : 10
    core id  : 11
    core id  : 12
    core id  : 13
    core id  : 16
    core id  : 17
    core id  : 18
    core id  : 19
    core id  : 20
    core id  : 21
    core id  : 25
    core id  : 26
    core id  : 27
    core id  : 28
    core id  : 29
    
    

    不难发现,core 的记录发生了重复,推测是由于physical id 设置了相同的名称,因此记录核心时就发生了重复。因此认为文件中记录的 24 核心更加准确。

    • 查看线程数

    通过processor 记录:

    grep 'processor' /proc/cpuinfo | sort -u | wc -l
    96
    
    

    可知服务器有两个cpu,每个cpu为24核心,一共48个核心,96线程,每个核心有2个线程。

    • lscpu

    可以直接查看计算机的cpu信息:

    Address sizes:                   46 bits physical, 48 bits virtual
    CPU(s):                          96
    On-line CPU(s) list:             0-95
    Thread(s) per core:              2
    Core(s) per socket:              24
    Socket(s):                       2
    NUMA node(s):                    2
    Vendor ID:                       GenuineIntel
    CPU family:                      6
    Model:                           85
    Model name:                      Intel(R) Xeon(R) Platinum 8255C CPU @ 2.50GHz
    

    相关文章

      网友评论

          本文标题:2022-11-24查看服务器的cpu、核心、线程

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