三,lscpu命令
lscpu
是 Linux 系统中的一个命令,用于显示系统中 CPU 的相关信息。
-
作用:帮助用户快速了解系统中 CPU 的配置、性能和拓扑结构等信息,包括 CPU 的型号、核心数、线程数、频率、缓存大小等,以便用户评估系统的计算能力,或者在进行性能优化、资源分配等工作时提供参考。
-
基本语法:
lscpu [选项]
。 -
常用选项
- -a:显示所有可用的 CPU 信息,包括详细的拓扑结构和其他相关属性。
- -p:以 CSV(逗号分隔值)格式输出信息,便于脚本解析和处理。
- -e:显示扩展的 CPU 信息,提供更详细的内容,如支持的指令集等。
lscpu
- Architecture:CPU 的架构,如
x86_64
表示 64 位的 x86 架构。- CPU op - mode(s):CPU 支持的操作模式,这里表示支持 32 位和 64 位模式。
- Byte Order:字节序,
Little Endian
表示小端序。- Address sizes:物理地址和虚拟地址的位数。
- CPU(s):系统中总的逻辑 CPU 数量。
- On - line CPU(s) list:当前在线的 CPU 列表。
- Thread(s) per core:每个核心的线程数,表明是否支持超线程技术。
- Core(s) per socket:每个插槽的核心数。
- Socket(s):物理 CPU 插槽的数量。
- NUMA node(s):非统一内存访问(NUMA)节点的数量 #nodes的数量。
- Vendor ID:CPU 的厂商 ID,
GenuineIntel
表示英特尔。- CPU family:CPU 的家族型号。
- Model:具体的型号。
- Model name:CPU 的名称,包含了详细的型号和频率信息。
- Stepping:CPU 的步进值,用于区分同一型号 CPU 的不同修订版本。
- CPU MHz:当前 CPU 的运行频率。
- CPU max MHz:CPU 支持的最大睿频频率。
- CPU min MHz:CPU 的最小运行频率。
- BogoMIPS:是一个衡量 CPU 性能的指标,并非实际的 MIPS(每秒百万条指令)数,只是一个相对的性能参考值。
- Virtualization:显示 CPU 支持的虚拟化技术,如
VT - x
表示英特尔的虚拟化技术。- L1d cache、L1i cache、L2 cache、L3 cache:分别表示一级数据缓存、一级指令缓存、二级缓存和三级缓存的大小。
- NUMA node0 CPU(s):列出属于 NUMA 节点 0 的 CPU 列表。
- Flags:CPU 支持的特性和指令集,如
fpu
表示支持浮点运算单元,sse
、sse2
等表示支持的 SSE 指令集系列。
lscpu
命令提供了丰富的 CPU 信息,对于系统管理员进行系统配置、性能优化、资源分配等工作,以及开发人员针对特定 CPU 特性进行代码优化等方面都有很大的帮助。
除此之外也可以查询 /proc/cpuinfo
cat /proc/cpuinfo
处理器相关信息
- processor:逻辑处理器的编号,从 0 开始,系统中有多少个逻辑 CPU,就会有多少个这样的条目,编号依次递增。
- physical id:物理 CPU 的编号,如果是单 CPU 系统,所有逻辑 CPU 的
physical id
都为 0;如果是多 CPU 系统,每个物理 CPU 会有不同的编号。- core id:每个物理核心的编号,在同一物理 CPU 中,不同核心有不同的
core id
。- siblings:表示这个物理 CPU 上的逻辑 CPU 数量,包括超线程技术模拟出来的逻辑 CPU。
- cpu cores:物理 CPU 中真实的核心数量,不包括超线程。
CPU 基本信息
- vendor_id:CPU 的厂商 ID,常见的有
GenuineIntel
(英特尔)和AuthenticAMD
(超威半导体)等。- cpu family:CPU 的家族型号,用于区分不同系列的 CPU。
- model:具体的型号,结合
cpu family
可以更准确地识别 CPU 的类型。- model name:CPU 的完整名称,包含了详细的型号、频率等信息。
- stepping:CPU 的步进值,用于区分同一型号 CPU 的不同修订版本,不同步进的 CPU 可能在性能、稳定性或功能上有一些差异。
CPU 性能信息
- cpu MHz:当前 CPU 的运行频率,单位是 MHz。
- cache size:CPU 的缓存大小,这里显示的是三级缓存的大小,缓存对于提高 CPU 访问数据的速度非常重要,缓存越大,通常性能也会更好。
- bogomips:是一个衡量 CPU 性能的指标,是 “Bogus Million Instructions Per Second” 的缩写,并非实际的 MIPS 数,它是一个相对的性能参考值,主要用于在系统启动时估计 CPU 的性能。
CPU 特性和功能信息
- flags:列出了 CPU 支持的特性和指令集,每个特性或指令集用空格分隔,如
fpu
表示支持浮点运算单元,sse
、sse2
等表示支持的 SSE 指令集系列,vmx
表示支持英特尔的虚拟化技术等。这些特性对于系统软件和应用程序充分发挥 CPU 的性能非常重要。- bugs:显示已知的 CPU 漏洞信息,如
cpu_meltdown
(熔断漏洞)、spectre_v1
和spectre_v2
(幽灵漏洞)等,系统管理员可以根据这些信息采取相应的安全措施。其他信息
- fpu、fpu_exception:表示 CPU 是否支持浮点运算单元以及浮点运算异常处理。
- cpuid level:CPUID 指令的级别,用于标识 CPU 支持的 CPUID 功能的版本。
- wp:表示是否支持写保护。
- clflush size:
clflush
指令操作的缓存行大小,单位是字节。- cache_alignment:缓存对齐的字节数,用于优化数据在缓存中的存储和访问。
- address sizes:物理地址和虚拟地址的位数,这里表示物理地址是 46 位,虚拟地址是 48 位。
- power management:显示 CPU 的电源管理相关信息,有些 CPU 可能支持多种电源管理模式,以实现节能和性能调节的功能。
通过
cat /proc/cpuinfo
命令输出的信息,用户可以深入了解系统中 CPU 的详细情况,为系统配置、性能优化、软件兼容性测试等工作提供重要的参考依据。