lscpu
是一个用于显示有关 CPU 架构信息的命令。它提供关于处理器、核心、线程、缓存等的详细信息,帮助用户了解系统的硬件架构。以下是 lscpu
命令输出的主要字段及其含义的详细解释:
常见输出字段
-
Architecture:
- 显示 CPU 的架构,例如
x86_64
,表示 64 位架构。
- 显示 CPU 的架构,例如
-
CPU op-mode(s):
- 支持的操作模式,如
32-bit, 64-bit
,表示 CPU 可以运行 32 位和 64 位程序。
- 支持的操作模式,如
-
Byte Order:
- 字节序,通常为
Little Endian
(小端序)。
- 字节序,通常为
-
CPU(s):
- 系统中的逻辑 CPU 数量。
-
On-line CPU(s) list:
- 当前在线(可用)的 CPU 列表。
-
Thread(s) per core:
- 每个物理核心支持的线程数,即超线程技术(如 Intel 的 Hyper-Threading)。
-
Core(s) per socket:
- 每个物理 CPU 插槽中的核心数。
-
Socket(s):
- 系统中的物理 CPU 插槽数量。
-
NUMA node(s):
- 非统一内存访问(NUMA)节点数,NUMA 是一种内存架构,允许多个处理器访问自己的本地内存。
-
Vendor ID:
- CPU 供应商的标识,例如
GenuineIntel
或AuthenticAMD
。
- CPU 供应商的标识,例如
-
CPU family:
- CPU 的家族编号。
-
Model:
- CPU 的型号编号。
-
Model name:
- CPU 的完整型号名称。
-
Stepping:
- CPU 的步进版本,表示同一型号 CPU 的不同修订版本。
-
CPU MHz:
- CPU 的当前运行频率(以 MHz 为单位)。
-
BogoMIPS:
- 一个用于内核调度的虚构 MIPS(每秒百万条指令)值,与实际性能无关。
-
Virtualization:
- 指示 CPU 是否支持虚拟化技术,例如
VT-x
(Intel)或AMD-V
(AMD)。
- 指示 CPU 是否支持虚拟化技术,例如
-
L1d cache:
- 每核心的 L1 数据缓存大小。
-
L1i cache:
- 每核心的 L1 指令缓存大小。
-
L2 cache:
- 每核心的 L2 缓存大小(如果有)。
-
L3 cache:
- 所有核心共享的 L3 缓存大小。
-
NUMA node0 CPU(s):
- 个 NUMA 节点上的 CPU 列表。
-
Flags:
- CPU 支持的特性标志,例如
lm
(长模式,即 64 位支持)、vmx
(Intel VT-x)等。
- CPU 支持的特性标志,例如
使用示例
-
基本使用:
lscpu
直接运行
lscpu
命令将显示上述所有信息。 -
以解析友好的格式输出:
lscpu --parse=CPU,Core,Socket,Node
使用
--parse
选项可以只输出指定的字段,以逗号分隔。 -
JSON 格式输出:
lscpu --json
使用
--json
选项可以以 JSON 格式输出信息,便于脚本处理。
注意事项
lscpu
命令的输出可能会因 CPU 型号和系统配置的不同而有所差异。- 某些字段可能不适用于所有系统,例如 NUMA 节点信息在没有 NUMA 架构的系统上可能不显示。
lscpu
命令通常用于 Linux 系统,需要具有适当的权限来执行。
lscpu
是一个非常有用的工具,特别是在需要了解系统硬件配置以进行性能优化或故障排除时。
(本文来源:nzw6.com)