CPU(Central Processing Unit)是计算机系统的运算和控制核心,是信息处理、程序运行的最终执行单元,相当于系统的“大脑”。
当 CPU 过于繁忙,就像“人脑”并发处理过多的事情,会降低做事的效率,严重时甚至会导致崩溃“宕机”。
因此,理解 CPU 的工作原理,合理控制负载,是保障系统稳定持续运行的重要手段。
CPU 的物理核与逻辑核
一台机器可能包含多块 CPU 芯片,多个 CPU 之间通过系统总线通信。
超线程(Hyper-Threading)技术可以让一个物理核在单位时间内同时处理两个线程,变成两个逻辑核。但它不会拥有传统单核 2 倍的处理能力,也不可能提供完整的并行处理能力。
![](https://img.haomeiwen.com/i12979420/f745ed30095ff95d.png)
![](https://img.haomeiwen.com/i12979420/67d27af3e14f4b6d.png)
![](https://img.haomeiwen.com/i12979420/a5d7efef17f578ac.png)
举个例子,假设一个 CPU 芯片就是一个班级;它有 2 个物理核,也就是 2 个同学,老师让他们分别担任班长和体育委员;过了一段时间,校长要求每个班级还要有学习委员和生活委员,理论上还需要 2 位同学,但是这个班级只有 2 个人,最后老师只能让班长和体育委员兼任。
这样一来,对于不了解的人来说,这个班级有班长、体育委员、学习委员和生活委员 4 个职位,应该有 4 个人,每个职位就是一个逻辑核;但是,实际上这个班级只有 2 位同学,也就是只有 2 个物理核,虽然他们可以做 4 份工作,但是不能把他们当做 4 个人。
![](https://img.haomeiwen.com/i12979420/fc15db950695193c.png)
如何查询 CPU 信息?
在 Linux 系统下,可以从 /proc/cpuinfo 文件中读取 CPU 信息,如下图所示:
![](https://img.haomeiwen.com/i12979420/d8338634e343a656.png)
# 查看 CPU 个数
$ cat /proc/cpuinfo | grep 'physical id' | sort | uniq | wc -l
# 查看 CPU 物理核数
$ cat /proc/cpuinfo | grep 'cpu cores' | sort | uniq
# 查看 CPU 逻辑核数
$ cat /proc/cpuinfo | grep 'siblings' | sort | uniq
$ lscpu
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Address sizes: 42 bits physical, 48 bits virtual
Byte Order: Little Endian
CPU(s): 8
On-line CPU(s) list: 0-7
Vendor ID: GenuineIntel
Model name: Intel(R) Xeon(R) Gold 6278C CPU @ 2.60GHz
CPU family: 6
Model: 85
Thread(s) per core: 2
Core(s) per socket: 4
Socket(s): 1
Stepping: 7
BogoMIPS: 5200.00
Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht syscall nx pdpe1gb rdtscp lm constant_tsc rep_good nopl xtopology nonstop_tsc cpuid tsc_known_freq pni pclmu
lqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch invpcid_single ssbd ibrs ibpb stibp ibrs_enhanced fsgsbase tsc_adjust b
mi1 hle avx2 smep bmi2 erms invpcid rtm mpx avx512f avx512dq rdseed adx smap clflushopt clwb avx512cd avx512bw avx512vl xsaveopt xsavec xgetbv1 arat avx512_vnni md_clear flush_l1d arch_capabilities
Virtualization features:
Hypervisor vendor: KVM
Virtualization type: full
Caches (sum of all):
L1d: 128 KiB (4 instances)
L1i: 128 KiB (4 instances)
L2: 4 MiB (4 instances)
L3: 35.8 MiB (1 instance)
NUMA:
NUMA node(s): 1
NUMA node0 CPU(s): 0-7
Vulnerabilities:
Itlb multihit: KVM: Mitigation: VMX unsupported
L1tf: Not affected
Mds: Not affected
Meltdown: Not affected
Spec store bypass: Mitigation; Speculative Store Bypass disabled via prctl and seccomp
Spectre v1: Mitigation; usercopy/swapgs barriers and __user pointer sanitization
Spectre v2: Mitigation; Enhanced IBRS, IBPB conditional, RSB filling
Srbds: Not affected
Tsx async abort: Vulnerable: Clear CPU buffers attempted, no microcode; SMT Host state unknown
1. 架构(Architecture):x86_64,表示使用的是64位的x86架构。
2. CPU操作模式(CPU op-mode):支持32位和64位操作模式。
3. 地址大小(Address sizes):物理地址位数为42位,虚拟地址位数为48位。
4. 字节序(Byte Order):小端序(Little Endian)。
5. CPU数量(CPU(s)):共有8个CPU。
6. 在线CPU列表(On-line CPU(s) list):CPU的编号范围为0-7。
7. 厂商ID(Vendor ID):GenuineIntel,表示CPU是英特尔的。
8. 型号名称(Model name):Intel(R) Xeon(R) Gold 6278C CPU @ 2.60GHz,表示CPU的型号和主频。
9. CPU家族(CPU family):6,表示CPU属于第6代家族。
10. 模型(Model):85,表示CPU的具体型号。
11. 每个核心的线程数(Thread(s) per core):2,表示每个CPU核心可以同时运行2个线程。
12. 每个插槽的核心数(Core(s) per socket):4,表示每个CPU插槽有4个核心。
13. 插槽数量(Socket(s)):1,表示系统中只有一个CPU插槽。
14. 步进(Stepping):7,表示CPU的步进版本。
15. BogoMIPS:5200.00,是一个用于估算CPU速度的指标。
16. 标志(Flags):列出了CPU支持的各种特性和扩展指令集。
17. 虚拟化特性(Virtualization features):KVM,表示使用的是KVM虚拟化技术。
18. 缓存(Caches):列出了各级缓存的大小。
19. NUMA:表示非一致性内存访问(NUMA)的相关信息,包括NUMA节点数和每个节点的CPU范围。
20. 漏洞(Vulnerabilities):列出了CPU可能存在的一些安全漏洞和对应的缓解措施。
总结:该输出提供了关于系统中CPU的详细信息,包括架构、型号、核心数、线程数、缓存大小等。同时还提供了有关虚拟化、NUMA和安全漏洞的信息。
参考
聊聊CPU的发展历程之单核、多核、超线程
https://mp.weixin.qq.com/s/JzLUgh47zAT5sD9dieNdog
超线程/SMT多线程技术有什么用?
https://www.expreview.com/56674.html
CPU 平均负载为多少更合理?
https://blog.csdn.net/Dongguabai/article/details/113846330
服务器CPU负载过高,如何定位问题
https://www.jianshu.com/p/45c6bcb85934
如何正确理解 CPU 使用率和平均负载的关系?
https://blog.csdn.net/wwwwww33/article/details/108378406
网友评论