$ lscpu
Architecture: x86_64 # 架构CPU op-mode(s): 32-bit, 64-bitAddress sizes: 45 bits physical, 48 bits virtualByte Order: Little Endian # 字节序
CPU(s): 2 # 逻辑cpu数On-line CPU(s) list: 0,1
Vendor ID: GenuineIntel # cpu厂商idModel name: 11th Gen Intel(R) Core(TM) i5-1135G7 @ 2.40GHz # cpu详细信息CPU family: 6Model: 140Thread(s) per core: 1 # 每核线程数Core(s) per socket: 1 # 每cpu核心数Socket(s): 2 # 物理cpu个数Stepping: 1BogoMIPS: 4838.40 # 百万指令/sFlags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon rep_good nopl xtopology tsc_reliable nonstop_tsc cpuid tsc_known_freq pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch invpcid_single pti ssbd ibrs ibpb stibp fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid avx512f avx512dq rdseed adx smap avx512ifma clflushopt clwb avx512cd sha_ni avx512bw avx512vl xsaveopt xsavec xgetbv1 xsaves arat avx512vbmi umip avx512_vbmi2 gfni vaes vpclmulqdq avx512_vnni avx512_bitalg avx512_vpopcntdq rdpid fsrm avx512_vp2intersect flush_l1d arch_capabilities
Virtualization features: Hypervisor vendor: VMwareVirtualization type: full
Caches (sum of all): L1d: 96 KiB (2 instances) # 一级数据缓存大小L1i: 64 KiB (2 instances) # 一级指令缓存大小L2: 2.5 MiB (2 instances) # 二级缓存大小L3: 16 MiB (2 instances) # 三级缓存大小
NUMA: NUMA node(s): 1NUMA node0 CPU(s): 0,1
Vulnerabilities: Itlb multihit: Not affectedL1tf: Mitigation; PTE InversionMds: Vulnerable: Clear CPU buffers attempted, no microcode; SMT Host state unknownMeltdown: Mitigation; PTIMmio stale data: Not affectedRetbleed: Mitigation; IBRSSpec store bypass: Mitigation; Speculative Store Bypass disabled via prctl and seccompSpectre v1: Mitigation; usercopy/swapgs barriers and __user pointer sanitizationSpectre v2: Mitigation; IBRS, IBPB conditional, RSB filling, PBRSB-eIBRS Not affectedSrbds: Not affectedTsx async abort: Not affected
大小端
假如现有一32位int型数 0x1234 5678,
逻辑CPU和物理CPU
socket就是主板上插cpu的槽的数目,也就是可以插入的物理CPU的个数。
core就是我们平时说的“核“,每个物理CPU可以双核,四核等等。
thread就是每个core的硬件线程数,即超线程技术(Hyper-threading
, HT)
什么是超线程技术?
超线程是Intel公司提出的一种提高CPU性能的技术,就是将一个物理CPU当作两个逻辑CPU使用,使CPU可以同时执行多重线程,从而发挥更大的效率。超线程技术利用特殊的硬件指令,把两个逻辑内核模拟成两个物理芯片,让单个处理器都能使用线程级并行计算,进而兼容多线程操作系统和应用软件,减少CPU的闲置时间,提高CPU的运行效率。
逻辑CPU数量=物理cpu数量 * cpu cores * 线程数
举例来说,如果某个服务器”2 路 4 核超线程”,也就是 2 个插槽,4 核心,默认为 2 thread,也就是 242 是 16 逻辑 CPU。对操作系统来说,逻辑 CPU 的数量就是 Socket * Core * Thread
。
bogomips
BogoMIPS 是 Linus 本人的独创,Bogomips是Linux操作系统中衡量计算机处理器运行速度的的一种尺度,
MIPS是millions of instructions per second(百万条指令每秒)的缩写,其代表CPU的运算速度,是cpu性能的重要指标。
Bogo 意思是“假的,伪造的”,之所以说是假的,是因为在计算 BogoMIPS 的值时,CPU 一直在单一的执行 NOP (空操作),而不是随机执行指令集中的任意指令,所以不能以此作为 CPU 的性能指标。
缓存