1.物理CPU数:计算机上实际配置的CPU个数。
//查看计算机物理CPU个数(必须先sort后uniq)cat /proc/cpuinfo | grep "physical id" | sort | uniq | wc -l // 当前计算机有2个物理CPU2
2.CPU核数:CPU上集中的处理数据的CPU核心个数。
计算CPU核数=物理CPU个数 * 每个物理CPU的核数。例如你的计算机有两个物理CPU,每个CPU是双核,那么计算机就是四核的。
//查看每个物理CPU的核数cat /proc/cpuinfo| grep "cpu cores"| uniq //每个物理CPU有8个核,共有2个物理CPU,则当前计算机为16核cpu cores : 8
3.逻辑CPU数(线程数):操作系统使用逻辑CPU来模拟出真实CPU的效果,其效果就好像把多个CPU集中在一个CPU上。实际上逻辑CPU的数量就是平时称呼的几核几线程中的线程数量。
当计算机没有开启超线程时,逻辑CPU的个数就是计算机的物理CPU核数。而当超线程开启后,逻辑CPU的个数是物理CPU核数的两倍。
//查看系统具有几个逻辑核(线程数)cat /proc/cpuinfo| grep -i "processor"| wc -l //当前计算机为32线程32
//查看每个物理CPU的逻辑核数(线程数)cat /proc/cpuinfo | grep -i "siblings"| uniq //每个物理CPU有16个逻辑核,共有2个物理CPU,则当前计算机有32个逻辑核,即为32线程siblings: 16
4.常用术语:计算机CPU是几路几核几线程
//两路,16核32线程。指当前计算机开启超线程,有2颗物理CPU,物理CPU核总数为16核,逻辑CPU核总数为32。计算机CPU核数 = 物理CPU数 * 每颗物理CPU的核数 计算机线程数(逻辑CPU数)= 物理CPU个数 * 每颗物理CPU的核数 * 超线程数(关闭超线程取值为1,开启超线程取值为2)
5.查看CPU型号
//查看CPU型号cat /proc/cpuinfo|grep -i "model name"|awk -F ":" '{print $2}'Intel(R) Xeon(R) CPU E5-2697 v3 @ 2.60GHz
6.查看超频信息
//查看是否支持超线程(显示ht则表示支持超线程)cat /proc/cpuinfo | grep -i "flag" |grep -wo "ht"|uniq
ht//查看是否超线程(cpu cores和siblings一致表示没有超线程)cat /proc/cpuinfo | grep -e "cpu cores" -e "siblings" | sort | uniq
cpu cores :8
siblings :16
7./proc/cpuinfo文件详解
processor:系统中逻辑处理核的编号。对于单核处理器,则认为是其CPU编号,对于多核处理器则可以是物理核、或者使用超线程技术虚拟的逻辑核model name :CPU属于的名字及其编号、标称主频physical id :物理CPU的ID标号,一个物理CPU对应唯一一个physical id
core id:逻辑CPU的ID标号,同一个物理CPU核模拟出来的两个逻辑CPU核的core id相同,也可能与另外一个物理CPU模拟出来的逻辑CPU核的core id相同。即2个物理CPU,可能会出现有4个core id值均为0cpu cores :该逻辑核所处CPU的物理核数siblings:单个CPU逻辑核数flags :当前CPU支持的功能(ft表示支持超频)
参考文档:
物理CPU CPU核数 逻辑CPU 几核几线程的概念详解
/proc/cpuinfo 文件分析(查看CPU信息)
Linux下查看CPU型号,内存大小,硬盘空间的命令(详解)