Intel Xeon Gold 6130参数

基本参数
CPU系列    Xeon Gold系列
制作工艺    14纳米
核心代号    Skylake-SP
性能参数
核心数量        十六核心
线程数量        三十二线程
CPU主频          2.1GHz
动态加速频率    3.7GHz
L3缓存          22MB
热设计功耗(TDP)    125W

  在linux操作系统中,CPU的信息在启动的过程中被装载到虚拟目录/proc下的cpuinfo文件中,我们可以通过 cat /proc/cpuinfo 查看一下:

cat /proc/cpuinfo

processor       : 0
vendor_id       : GenuineIntel
cpu family      : 6
model           : 85
model name      : Intel(R) Xeon(R) Gold 6130 CPU @ 2.10GHz
stepping        : 4
microcode       : 33554526
cpu MHz         : 2095.077
cache size      : 22528 KB
physical id     : 0
siblings        : 32
core id         : 0
cpu cores       : 16
apicid          : 0
initial apicid  : 0
fpu             : yes
fpu_exception   : yes
cpuid level     : 22
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aper
fmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 fma cx16 xtpr pdcm pcid dca sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch ida arat epb xsaveopt pln pts dtherm in
vpcid_single pti tpr_shadow vnmi flexpriority ept vpid fsgsbase bmi1 hle avx2 smep bmi2 erms invpcid rtm cqm avx512f rdseed adx avx512cd cqm_llc cqm_occup_llc ibpb ibrs stibp ssbd
bogomips        : 4190.15
clflush size    : 64
cache_alignment : 64
address sizes   : 46 bits physical, 48 bits virtual
power management:
中间略。。。。。。
processor       : 127
vendor_id       : GenuineIntel
cpu family      : 6
model           : 85
model name      : Intel(R) Xeon(R) Gold 6130 CPU @ 2.10GHz
stepping        : 4
microcode       : 33554526
cpu MHz         : 2095.077
cache size      : 22528 KB
physical id     : 3
siblings        : 32
core id         : 12
cpu cores       : 16
apicid          : 121
initial apicid  : 121
fpu             : yes
fpu_exception   : yes
cpuid level     : 22
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 fma cx16 xtpr pdcm pcid dca sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch ida arat epb xsaveopt pln pts dtherm invpcid_single pti tpr_shadow vnmi flexpriority ept vpid fsgsbase bmi1 hle avx2 smep bmi2 erms invpcid rtm cqm avx512f rdseed adx avx512cd cqm_llc cqm_occup_llc ibpb ibrs stibp ssbd
bogomips        : 4187.97
clflush size    : 64
cache_alignment : 64
address sizes   : 46 bits physical, 48 bits virtual
power management:

processor :系统中逻辑处理核的编号。对于单核处理器,则可认为是其CPU编号,对于多核处理器则可以是物理核、或者使用超线程技术虚拟的逻辑核。
vendor_id : CPU制造商      
cpu family :CPU产品系列代号
model :CPU属于其系列中的哪一代的代号
model name  :CPU属于的名字及其编号、标称主频
stepping   :CPU属于制作更新版本
cpu MHz    :CPU的实际使用主频
cache size  :CPU二级缓存大小
physical id :单个CPU的标号
siblings    :单个CPU逻辑物理核数
core id     :当前物理核在其所处CPU中的编号,这个编号不一定连续
cpu cores   :该逻辑核所处CPU的物理核数
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 :对能源管理的支持,有以下几个可选支持功能:

Linux 下常用的查看CPU 信息

物理cpu数:
cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l
4
四颗CPU

cpu核数:单块CPU上面能处理数据的芯片组的数量
cat /proc/cpuinfo| grep "cpu cores"| uniq
cpu cores       : 16
但CPU是16核CPU

逻辑cpu数:简单来说,它可使处理器中的1颗内核,如2颗内核那样在操作系统中发挥作用。
cat /proc/cpuinfo| grep "processor"| wc -l
128个逻辑CPU

lscpu命令得到信息

lscpu  
Architecture:          x86_64                    //架构--这里的64指的位处理器
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian             //小端法
CPU(s):                128                       //cpu数量
On-line CPU(s) list:   0-127                     //在线的cpu数量 有些时候为了省电或者过热的时候,某些CPU会停止运行
Thread(s) per core:    2                         //每个核心的线程数是2
Core(s) per socket:    16                        //每个插槽上有几个核心
Socket(s):             4
NUMA node(s):          4
Vendor ID:             GenuineIntel
CPU family:            6
Model:                 85
Model name:            Intel(R) Xeon(R) Gold 6130 CPU @ 2.10GHz
Stepping:              4                          //这个可以简单理解为版本号  也有A0这样的标识方式
CPU MHz:               2095.077
BogoMIPS:              4187.97
Virtualization:        VT-x                       //虚拟化技术
L1d cache:             32K                        //一级高速缓存 dcache 用来存储数据
L1i cache:             32K                        //一级高速缓存 icache 用来存储指令
L2 cache:              1024K
L3 cache:              22528K                     //缓存速度上 L1 > L2 > L3 > 内存
NUMA node0 CPU(s):     0,4,8,12,16,20,24,28,32,36,40,44,48,52,56,60,64,68,72,76,80,84,88,92,96,100,104,108,112,116,120,124
NUMA node1 CPU(s):     1,5,9,13,17,21,25,29,33,37,41,45,49,53,57,61,65,69,73,77,81,85,89,93,97,101,105,109,113,117,121,125
NUMA node2 CPU(s):     2,6,10,14,18,22,26,30,34,38,42,46,50,54,58,62,66,70,74,78,82,86,90,94,98,102,106,110,114,118,122,126
NUMA node3 CPU(s):     3,7,11,15,19,23,27,31,35,39,43,47,51,55,59,63,67,71,75,79,83,87,91,95,99,103,107,111,115,119,123,127

NUMA(Non-Uniform MemoryAccess)
分布式体系结构 (非统一内存体系结构)
由于展开来讲设计到很多问题,也需要单独写一篇长文章才能说完,这里可以精简的说一下:
NUMA中,多个CPU访问内存是没有区别的,成本和速度相同。而在NUMA中,可以看成每个CPU有自己的内存,被称为本地内存,CPU之间通过一种方式联结,使得CPU可以访问非管辖范围内的内存(非本地内存),但是。由于不属于自己的一亩三分地,需要通过另一个通道获取,速度回比访问本地内存要慢。但是好处是这种方式增加了扩展性。缺点是速度会受影响。

[root]# numastat
                           node0           node1           node2           node3
numa_hit                12579056         9137169         5669711         6829518
numa_miss                      0               0               0               0
numa_foreign                   0               0               0               0
interleave_hit             31082           31107           31111           31070
local_node              12567668         9098436         5639422         6793653
other_node                 11388           38733           30289           35865
numa_hit是打算在该节点上分配内存,最后从这个节点分配的次数;
num_miss是打算在该节点分配内存,最后却从其他节点分配的次数;
num_foregin是打算在其他节点分配内存,最后却从这个节点分配的次数;
interleave_hit是采用interleave策略最后从该节点分配的次数;
local_node该节点上的进程在该节点上分配的次数
other_node是其他节点进程在该节点上分配的次数

查看numa相关信息,包括每个node内存大小,每个node中的逻辑cpu
[root@oracle proc]# numactl --hardware
available: 4 nodes (0-3)
node 0 cpus: 0 4 8 12 16 20 24 28 32 36 40 44 48 52 56 60 64 68 72 76 80 84 88 92 96 100 104 108 112 116 120 124
node 0 size: 64984 MB
node 0 free: 63151 MB
node 1 cpus: 1 5 9 13 17 21 25 29 33 37 41 45 49 53 57 61 65 69 73 77 81 85 89 93 97 101 105 109 113 117 121 125
node 1 size: 65536 MB
node 1 free: 63913 MB
node 2 cpus: 2 6 10 14 18 22 26 30 34 38 42 46 50 54 58 62 66 70 74 78 82 86 90 94 98 102 106 110 114 118 122 126
node 2 size: 65536 MB
node 2 free: 64067 MB
node 3 cpus: 3 7 11 15 19 23 27 31 35 39 43 47 51 55 59 63 67 71 75 79 83 87 91 95 99 103 107 111 115 119 123 127
node 3 size: 65536 MB
node 3 free: 64016 MB
node distances:
node   0   1   2   3
  0:  10  21  21  21
  1:  21  10  21  21
  2:  21  21  10  21
  3:  21  21  21  10