linux下查看CPU个数、核数、运行模式以及是否支持超线程技术

1.查看物理CPU个数

#cat /proc/cpuinfo |grep "physical id"|sort |uniq|wc -l


执行结果:1

2.查看逻辑CPU个数

#cat /proc/cpuinfo |grep "processor"|wc -l  


执行结果:12

3.查看单个CPU的核数

#cat /proc/cpuinfo |grep "cores"|uniq  


执行结果:6

4.是否开启intel的超线程技术(HT)

如果有两个逻辑CPU具有相同的"core id",那么超线程是打开的。可以根据以下原则,来判断是否支持HT技术。
如果"siblings"和"cpu cores"一致,则说明不支持超线程,或者超线程未打开。
如果"siblings"是"cpu cores"的两倍,则说明支持超线程,并且超线程已打开。

#cat /proc/cpuinfo |grep "sibling"|uniq


执行结果:siblings : 12

#cat /proc/cpuinfo | grep "cpu cores"|uniq

执行结果:cpu cores : 6

5.CPU是32还是64位运行模式

# getconf LONG_BIT

执行结果:64

注意:如果结果是32,代表是运行在32位模式下,但不代表CPU不支持64bit。

# cat /proc/cpuinfo | grep flags | grep ' lm ' | wc -l
 
执行结果:12
 
(结果大于0, 说明支持64bit计算. lm指long mode, 支持lm则是64bit)

 

物理CPU与逻辑CPU的关系如下:

逻辑CPU数量=物理cpu数量 x cpu cores x 2(如果支持并开启ht)

你可能感兴趣的:(物理cpu和逻辑cpu,cpu核数和超线程)