在Linux中查询CPU的核数
- 无主题
- 2021-08-29
以一台Linux服务器为例。这台Linux包括一颗
Intel(R) Xeon(R) CPU E3-1230 v2 @ 3.30GHz
CPU, 单颗CPU包括 4 个 cpu core, 使用超线程包含8个逻辑cpu core。下面让我们通过Linux的命令来查找对应的参数,看看是否符合官方的介绍, 主要是查看
/proc/cpuinfo
的信息获得。
查看 CPU 的型号
cat /proc/cpuinfo | grep 'model name' | sort | uniq
输出:
model name : Intel(R) Xeon(R) CPU E3-1230 V2 @ 3.30GHz
查看 CPU 颗数
实际Server中插槽上的CPU个数, 物理cpu数量,可以数不重复的 physical id
个数。
cat /proc/cpuinfo | grep 'physical id' | sort | uniq | wc -l
输出:
1
查看 CPU 核数
一颗CPU上面能处理数据的芯片组的数量。
cat /proc/cpuinfo |grep "cores"|uniq|awk '{print $4}'
输出:
4
逻辑 CPU 核数
一般情况,我们认为一颗cpu可以有多核,加上intel的超线程技术(HT), 可以在逻辑上把一个物理线程模拟出两个线程来使用,使得单个核心用起来像两个核一样,以充分发挥CPU的性能,
逻辑CPU数量=物理cpu数量 x cpu cores 这个规格值 x 2(如果支持并开启超线程)。
top命令查询出来的就是逻辑CPU的数量。
cat /proc/cpuinfo |grep "processor"|wc -l
输出:
8