1.首先理解下关于cpu的一些概念
总核数 = 物理CPU个数 X 每颗物理CPU的核数
总逻辑CPU数 = 物理CPU个数 X 每颗物理CPU的核数 X 超线程数
#查看物理CPU个数
cat /proc/cpuinfo| grep “physical id”| sort| uniq| wc -l
#查看每个物理CPU中core的个数(即核数)
cat /proc/cpuinfo| grep “cpu cores”| uniq
查看逻辑CPU的个数
cat /proc/cpuinfo| grep “processor”| wc -l
#查看CPU信息(型号)
cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c
2.查看liunx cpu信息
lscpu
#架构
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
#cpu逻辑核数
CPU(s): 80
On-line CPU(s) list: 0-79
#超线程
Thread(s) per core: 2
#单个cpu物理核数
Core(s) per socket: 20
座: 2
#物理cpu处理器个数
NUMA 节点: 2
厂商 ID: GenuineIntel
CPU 系列: 6
型号: 85
型号名称: Intel® Xeon® Gold 5218R CPU @ 2.10GHz
步进: 7
CPU MHz: 2100.000
BogoMIPS: 4200.00
虚拟化: VT-x
#一级高速缓存 指令集
L1d 缓存: 32K
#一级高速缓存 数据集
L1i 缓存: 32K
#二级高速缓存
L2 缓存: 1024K
#三级高速缓存
L3 缓存: 28160K
#物理cpu0里面的逻辑内核
NUMA 节点0 CPU: 0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,32,34,36,38,40,42,44,46,48,50,52,54,56,58,60,62,64,66,68,70,72,74,76,78
物理cpu1里面的逻辑内核
NUMA 节点1 CPU: 1,3,5,7,9,11,13,15,17,19,21,23,25,27,29,31,33,35,37,39,41,43,45,47,49,51,53,55,57,59,61,63,65,67,69,71,73,75,77,79
3首先来看liunx高速缓存地址
其中
index0是一级缓存 数据指令 存放的地方
index1是一级缓存 数据储存 存放的地方(即一级缓存分指令和数据2部分存储)
index2是二级缓存 数据存储 存放的地方
index3是三级缓存 数据存储 存放的地方