一,lscpu所屬的包:
[root@yjweb ~]# whereis lscpu lscpu: /usr/bin/lscpu /usr/share/man/man1/lscpu.1.gz
[root@yjweb ~]# rpm -qf /usr/bin/lscpu util-linux-2.32.1-8.el8.x86_64
如果找不到命令,可以用yum安裝
[root@yjweb ~]# yum install util-linux
說明:劉宏締的架構森林是一個專注架構的博客,地址:https://www.cnblogs.com/architectforest
對應的源碼可以訪問這里獲取: https://github.com/liuhongdi/
說明:作者:劉宏締 郵箱: 371125307@qq.com
二,查看版本
[root@yjweb ~]# lscpu --version lscpu from util-linux 2.32.1
三,輸出字段的含義:
先看一個例子:
Architecture: x86_64 CPU op-mode(s): 32-bit, 64-bit Byte Order: Little Endian CPU(s): 4 On-line CPU(s) list: 0-3 Thread(s) per core: 2 Core(s) per socket: 2 Socket(s): 1 NUMA node(s): 1 Vendor ID: GenuineIntel CPU family: 6 Model: 85 Model name: Intel(R) Xeon(R) Platinum 8269CY CPU @ 2.50GHz Stepping: 7 CPU MHz: 2499.998 BogoMIPS: 4999.99 Hypervisor vendor: KVM Virtualization type: full L1d cache: 32K L1i cache: 32K L2 cache: 1024K L3 cache: 36608K NUMA node0 CPU(s): 0-3 Flags: ...
說明:
Architecture: #架構
CPU op-mode(s): #支持的模式
Byte Order: #字節排序的模式,常用小端模式
CPU(s): #邏輯cpu顆數
On-line CPU(s) list: #在線的cpu數量 有故障或者過熱時,某些CPU會停止運行而掉線
Thread(s) per core: #每個核心線程
Core(s) per socket: #每個cpu插槽核數/每顆物理cpu核數
CPU socket(s): #cpu插槽數,即:物理cpu的數量
NUMA node(s): #有幾個NUMA節點
Vendor ID: #cpu廠商ID
CPU family: #廠商設定的CPU家族編號
Model: #型號
Model name: #型號名稱
Stepping: #步進,可以理解為同一型號cpu的版本號
CPU MHz: #cpu主頻
BogoMIPS: #估算MIPS, MIPS是每秒百萬條指令
Hypervisor vendor: #虛擬化技術的提供商
Virtualization type: #cpu支持的虛擬化技術的類型
L1d cache: #一級高速緩存 dcache 用來存儲數據
L1i cache: #一級高速緩存 icache 用來存儲指令
L2 cache: #二級緩存
L3 cache: #三級緩存
NUMA node0 CPU(s): 0-3 //四個cpu在同一個numa節點node0上
Flags: cpu支持的技術特征
四,什么是NUMA(Non-Uniform MemoryAccess)
中文名:分布式體系結構 (非統一內存體系結構)
與UMA不同,UMA是統一內存體系結構
UMA中,多個CPU訪問內存是沒有區別的,成本和速度相同。
而在NUMA中,可以看成每個CPU有自己的內存,被稱為本地內存,
CPU之間通過一種方式連結,使得CPU可以訪問非管轄范圍內的內存(非本地內存)。
因為需要通過另一個通道獲取,速度比訪問本地內存要慢。
好處是這種方式增加了擴展性。
缺點是速度會受影響,對象mysql這類的數據庫軟件會有影響。
五, 什么是大小端模式?
Byte Order: Little Endian
小端模式:低位的字節存儲在地址較小的位置
大端模式:高位的字節存儲在地址較小的位置
判斷當前機器的大小端序常用的命令:
[root@yjweb ~]# lscpu | grep -i byte Byte Order: Little Endian
六,查看本地centos的版本
[root@yjweb ~]# cat /etc/redhat-release CentOS Linux release 8.0.1905 (Core)