一:cpu命令描述
在linux操作系统中,CPU的信息在启动的过程中被装载到虚拟目录/proc下的cpuinfo文件中,我们可以通过 cat /proc/cpuinfo 查看一下
首先要明确物理CPU、核数、逻辑cpu数的概念
①物理CPU数(physical id):主板上实际插入的cpu数量,可以数不重复的 physical id 有几个
②CPU核心数(cpu cores):单块CPU上面能处理数据的芯片组的数量,如双核、四核等
③逻辑CPU数:一般情况下,
逻辑CPU=物理 CPU个数×每颗核数 #不支持超线程技术或没有开启此技术
逻辑CPU=物理CPU个数×每颗核数 *2 #表示服务器的CPU支持超线程技术(简单来说,它可使处理器中的1 颗内核如2 颗内核那样在操作系统中发挥作用。这样一来,操作系统可使用的执行资源扩大了一倍,大幅提高了系统的整体性能)
参数详情
processor :系统中逻辑处理核的编号。对于单核处理器,则可认为是其CPU编号,对于多核处理器则可以是物理核、或者使用超线程技术虚拟的逻辑核;逻辑处理器的唯一标识符,逻辑处理器可以这样理解,一般情况,一颗cpu可以有多核,利用Intel的HT技术可以在逻辑 上再分一倍数量的CPU的核出来。
vendor_id :CPU制造商
cpu family :CPU产品系列代号
model :CPU属于其系列中的哪一代的代号
model name:CPU属于的名字及其编号、标称主频
stepping :CPU属于制作更新版本
cpu MHz :CPU的实际使用主频
cache size :CPU二级缓存大小
physical id :单个CPU的标号,物理CPU的唯一标识符,物理CPU就是硬件上真实存在的CPU
siblings :单个CPU逻辑物理核数,位于同一个物理封装(即物理CPU)中的逻辑处理器的数量,它们可能支持也可能不支持超线程(HT)技术
core id :当前物理核在其所处CPU中的编号,这个编号不一定连续
cpu cores :该逻辑核所处CPU的物理核数,
apicid :用来区分不同逻辑核的编号,系统中每个逻辑核的此编号必然不同,此编号不一定连续
initial apicid:初始状态时的apicid
fpu :是否具有浮点运算单元(Floating Point Unit)
fpu_exception :是否支持浮点计算异常
cpuid level :执行cpuid指令前,eax寄存器中的值,根据不同的值cpuid指令会返回不同的内容
wp :表明当前CPU是否在内核态支持对用户空间的写保护(Write Protection)
flags :当前CPU支持的功能
bogomips :在系统内核启动时粗略测算的CPU速度(Million Instructions Per Second)
clflush size :每次刷新缓存的大小单位
cache_alignment :缓存地址对齐单位
address sizes :可访问地址空间位数
power management:支持电源管理。
二:快速查询想要获取的信息
- 物理cpu:物理cpu数量,实际服务器中插槽上的cpu个数
cat /proc/cpuinfo | grep "physical id" | sort |uniq
2.cpu核数:一块CPU上面能处理数据的芯片组的数量
cat /proc/cpuinfo | grep "cpu cores" | sort | uniq
3.逻辑cpu:操作系统可以使用逻辑CPU来模拟出真实CPU的效果
cat /proc/cpuinfo | grep "processor" | sort -u | wc -l
4.查看cpu型号
cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c
5.查看cpu的主频
cat /proc/cpuinfo | grep MHz | uniq