这里有几个概念:
1、一台物理机的物理CPU的个数
2、一个CPU上的核数
3、一个核上面支持的线程数
有下面的计算公式:
总核数 = 物理CPU个数 X 每颗物理CPU的核数
总逻辑CPU数 = 物理CPU个数 X 每颗物理CPU的核数 X 超线程数
# 查看CPU信息(型号)
cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c
Intel(R) Xeon(R) CPU E5-2630 0 @ 2.30GHz
# 查看物理CPU个数
cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l
2
#查看每个物理CPU中core的个数(即核数)
cat /proc/cpuinfo| grep "cpu cores"| uniq
cpu cores : 6
# 查看逻辑CPU的总个数
cat /proc/cpuinfo| grep "processor"| wc -l
通过以上几个 数据可以计算出每个核的超线程数
CPU架构
多个物理CPU,各个CPU通过总线进行通信,效率比较低,如下
多核CPU,不同的核通过L2 cache进行通信,存储和外设通过总线与CPU通信,如下:
多核超线程,每个核有两个逻辑的处理单元,两个线程共同分享一个核的资源,如下:
从上面执行的结果来看,证明我使用的cpu有2 * 6 = 12核,每个核有2个超线程,所以有24个逻辑cpu。
查看内 存信息
cat /proc/meminfo
MemTotal: 264420688 kB
MemFree: 40804524 kB
Buffers: 4100728 kB
Cached: 145047804 kB
SwapCached: 52852 kB
Active: 124676420 kB
Inactive: 76193484 kB
Active(anon): 47186960 kB
Inactive(anon): 4805988 kB
Active(file): 77489460 kB
Inactive(file): 71387496 kB
Unevictable: 364616 kB
Mlocked: 74368 kB
SwapTotal: 16777212 kB
SwapFree: 16420884 kB
Dirty: 8072 kB
Writeback: 0 kB
AnonPages: 52040468 kB
Mapped: 513736 kB
Shmem: 263984 kB
Slab: 19881608 kB
SReclaimable: 19098060 kB
SUnreclaim: 783548 kB
KernelStack: 95088 kB
PageTables: 315300 kB
NFS_Unstable: 0 kB
Bounce: 0 kB
WritebackTmp: 0 kB
CommitLimit: 148987556 kB
Committed_AS: 106430376 kB
VmallocTotal: 34359738367 kB
VmallocUsed: 812804 kB
VmallocChunk: 34225494280 kB
HardwareCorrupted: 0 kB
AnonHugePages: 46950400 kB
HugePages_Total: 0
HugePages_Free: 0
HugePages_Rsvd: 0
HugePages_Surp: 0
Hugepagesize: 2048 kB
DirectMap4k: 7168 kB
DirectMap2M: 2015232 kB
DirectMap1G: 266338304 kB
原文链接:https://blog.****.net/l1394049664/article/details/81811642