1.关于物理CPU个数。
也就是开机箱后直接看到的CPU数量,这个使用命令:cat /proc/cpuinfo | grep "physical id"| sort| uniq| wc -l 直接查看。
我随便找了一台机器,我这台机器的物理CPU数为:1,如图:
![](https://img-blog.csdnimg.cn/a7a660d59a4e4d8c95fc0ef27769638c.png)
2.关于CPU中的核心数
CPU核心数表示CPU上的运算单元数量,也就是通常所说的CPU核心,使用命令:cat /proc/cpuinfo| grep "cpu cores"| uniq 直接查看
运行命令后, 我这台机器的CPU核心为8,说明这块CPU有8个运算核心单元,如图:
![](https://img-blog.csdnimg.cn/77873a71e05043fcb9eece1c1c6556d9.png)
3.关于逻辑CPU数
这里有个公式, 理论上讲: 物理CPU个数 * 每颗CPU核心数 = 逻辑CPU个数
将上面的数据代入公式算一下: 1 * 8 = 8,说明我这台机器的逻辑CPU数应该等于8
但是如果CPU支持超线程(HT)技术, 这个公式的值就不相等。
这里直接使用查看逻辑CPU数的命令: cat /proc/cpuinfo | grep "processor"| wc -l,我这里是16,并不等于8,说明开启了超线程技术,如图:
![](https://img-blog.csdnimg.cn/79c08a56b97d473d96d553735d25dcd8.png)
4.验证是否支持超线程
直接输入命令:cat /proc/cpuinfo |grep 'flags', 如果在返回的内容中包含"ht"字样, 说明支持超线程, 如图:
总结
我这台机器,总共有1块物理CPU, 理论上是8核, 但开启了超线程(HT),使其运算能力变成了16核, 所以对外可以宣称, 这是一个16核CPU。