** 一、简介 **
lscpu命令用于显示Linux系统中的CPU架构信息。它从/proc/cpuinfo文件、/sys/devices/system/cpu目录、/sys/devices/system/node目录等系统文件中收集数据,并以清晰易读的格式展示出来。
** 主要功能: **
1. 显示 CPU 的型号、架构、主频、核心数、线程数。
2. 显示物理 CPU 插槽数量。
3. 显示每个物理核心对应的逻辑 CPU 编号(便于理解 CPU 与 CORE 的关系)。
4. 支持显示 NUMA 节点、缓存拓扑等信息。
** 二、语法 **
** 语法: ** lscpu [参数]
** 参数说明: **
| 选项 | 说明 |
|---|---|
| -a, --all | 同时显示在线和离线的 CPU (默认仅显示在线 CPU ) |
| -b, --online | 仅显示在线 CPU (默认) |
| -c, --caches | 显示 CPU 的缓存信息 |
| -e, --extended[=< 列表 >] | 以表格形式显示扩展信息,可指定列(如 cpu,core ) |
| -p, --parse[=< 列表 >] | 以可解析格式(如 CSV )输出,适合脚本处理 |
| -s, --sysroot < 目录 > | 以指定目录作为系统根目录读取 CPU 信息 |
| -x, --hex | 用十六进制显示 CPU 掩码 |
| -y, --physical | 显示物理 ID 而非逻辑索引 |
| -h, --help | 显示帮助信息 |
| -V, --version | 显示版本信息 |
** -e 参数常用列名称 **
| 列名 | 说明 |
|---|---|
| CPU | 逻辑 CPU 数量 |
| CORE | 逻辑核心数量 |
| SOCKET | 逻辑 CPU 插槽数量 |
| NODE | 逻辑 NUMA 节点数量 |
| BOOK | 逻辑 book 数量 |
| DRAWER | 逻辑抽屉数量 |
| CACHE | 显示 CPU 之间共享缓存的方式 |
| POLARIZATION | 虚拟硬件上的 CPU 调度模式 |
| ADDRESS | CPU 的物理地址 |
| CONFIGURED | 显示虚拟机监控程序是否已分配该 CPU |
| ONLINE | 显示 Linux 当前是否正在使用该 CPU |
| MAXMHZ | CPU 的最大主频( MHz ) |
| MINMHZ | CPU 的最小主频( MHz ) |
** 三、实战 **
** 1、查看cpu信息 **
[root@CentOS7 ~]# lscpuArchitecture: x86_64CPU op-mode(s): 32-bit, 64-bitByte Order: Little EndianCPU(s): 2On-line CPU(s) list: 0,1Thread(s) per core: 1Core(s) per socket: 2座: 1NUMA 节点: 1厂商 ID: GenuineIntelCPU 系列: 6型号: 158型号名称: Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz步进: 10CPU MHz: 2592.000BogoMIPS: 5184.00超管理器厂商: KVM虚拟化类型: 完全L1d 缓存: 32KL1i 缓存: 32KL2 缓存: 256KL3 缓存: 12288KNUMA 节点0 CPU: 0,1** 2、查看逻辑CPU与物理核心的对应关系 **
[root@CentOS7 ~]# lscpu -eCPU NODE SOCKET CORE L1d:L1i:L2:L3 ONLINE0 0 0 0 0:0:0:0 是1 0 0 1 1:1:1:0 是 ** 3、仅查看CPU和CORE两列信息 **
[root@CentOS7 ~]# lscpu -e=cpu,coreCPU CORE0 01 1** 4、判断系统是否启动超线程 **
[root@CentOS7 ~]# lscpu |grep "Thread(s) per core"Thread(s) per core: 1** 注: **
1. 如果值大于1,说明启用了超线程
2. 此时逻辑CPU数 = 物理核心数 * 超线程数
** 5、以CSV格式查看 **
[root@CentOS7 ~]# lscpu -p# The following is the parsable format, which can be fed to other# programs. Each different item in every column has an unique ID# starting from zero.# CPU,Core,Socket,Node,,L1d,L1i,L2,L30,0,0,0,,0,0,0,01,1,0,0,,1,1,1,0