物理CPU个数:
cat /proc/cpuinfo | grep "physical id" | sort | uniq | wc -l
8
每个物理CPU的核数
cat /proc/cpuinfo | grep "cpu cores" | uniq
4
逻辑CPU的个数:逻辑cpu个数=物理CPU个数×每颗核数
cat /proc/cpuinfo | grep 'process' | sort | uniq | wc -l
32
1、cat /proc/cpuinfo 各参数的含义
processor : 逻辑处理核编号;
vendor_id : CPU制造商;
cpu family : CPU产品系列代号;
model : CPU属于其系列中的哪一代的代号;
model name :CPU属于的名字及其编号、标称主频;
stepping : CPU属于制作跟新版本;
microcode : CPU微代码
cpu MHz : CPU的实际试用主频;
cache size : CPU二级缓存大小;
physical id : 物理CPU的标号;
siblings : 单个CPU逻辑物理核数;
core id : 当前物理核在其所处CPU中的编号;
cpu cores : 该逻辑核所处CPU的物理核数;
apicid : 区分不同逻辑核的编号;
initial apicid : 初始的apicid数值
fpu : 是否具有浮点运算单元;
fpu_exception : 是否支持浮点运算异常;
cpuid level : 执行cpuid指令前,eax寄存器中的值;
wp : 当前cpu是否在内核态支持对用户空间的写保护;
flags : 当前cpu支持的功能;
bogomips : 粗略测算的cpu速度;
clflush size :每次刷新缓存的大小单位;
cache_alignment : 缓存地址对齐单位;
address sizes : 可访问地址空间位数;
power management : 对能源管理的支持。
1. CPU个数,物理CPU个数,
指的是实际服务器中插槽上的CPU个数,如下图所示,主板上有两块CPU,则此时得到的physical id信息就会有两个不同的ID。注意physical id不一定是连续的。
[root@localhost ~]# cat /proc/cpuinfo | grep "physical id"physical id : 0physical id : 2
2. CPU核数,每个物理CPU的核数
指的是一块CPU上面能处理数据的芯片组数量。一个核心是一个可以运行指令的独立单元。CUP核数即一个CPU由多少个核心组成,核心数越多,代表这个CPU的运转速度越快,性能越好。下面命令的输出结果,意味着每个CPU含有2个核。
[root@localhost ~]# cat /proc/cpuinfo |grep "cpu cores" |sort |uniqcpu cores : 2
下图是一个6核CPU的电路图,在同一个CPU上显示的是一个CPU上含有6个核,Core 0~6。
3. 逻辑CPU的个数
一般情况下,逻辑cpu个数=物理CPU个数×每颗核数。如果不相等的话,则表示服务器的CPU支持超线程技术(HT:简单来说,它可使处理器中的1 颗内核如2 颗内核那样在操作系统中发挥作用。这样一来,操作系统可使用的执行资源扩大了一倍,大幅提高了系统的整体性能,此时逻辑cpu=物理CPU个数×每颗核数x2)。下面的命令输出结果可以看出,逻辑CPU的个数为4。
[root@localhost~]# cat /proc/cpuinfo |grep "processor"processor : 0processor : 1processor : 2processor : 3