在linux系统下能够通过cat /proc/cpuinfo来查看本机上cpu的相关信息,通过processor能够推断逻辑cpu的个数,physical id能够推断物理cpu的个数,通过cpu cores来推断每一个cpu内的核数,通过siblings和cpu cores的对照能够推断是否支持超线程。
[oracle@sany1 ~]$ cat /proc/cpuinfo |grep processor|wc -l
32
通过以上命令能够推断本机内的逻辑cpu个数为32
[oracle@sany1 ~]$ cat /proc/cpuinfo |grep physical\ id|sort|uniq
physical id : 0
physical id : 1
通过以上输出能够推断本机内物理cpu个数为2
[oracle@sany1 ~]$ cat /proc/cpuinfo |grep cpu\ cores|uniq
cpu cores : 8
通过以上输出能够推断单个cpu的核数为8
[root@sany1 ~]# cat /proc/cpuinfo |grep sibling|uniq
siblings : 16
通过以上输出的结果以及与cpu cores的比較能够确定本机支持超线程。
从以上结果我们终于能够确定本机上拥有2个物理cpu,每一个cpu上有8个核。每一个核上支持2个线程,从操作系统上通过top或者mpstat等监控命令能够看到有32个逻辑cpu。
以上结论纯属个人理解,假设有错误的地方希望各位指出。
整理自网络