Linux下区分物理CPU、逻辑CPU和CPU核数
Linux下區分物理CPU、邏輯CPU和CPU核數
㈠ 概念
㈡ 查看CPU信息
vendor id 如果處理器為英特爾處理器,則字符串是 GenuineIntel。processor 包括這一邏輯處理器的唯一標識符。physical id 包括每個物理封裝的唯一標識符。core id 保存每個內核的唯一標識符。siblings 列出了位于相同物理封裝中的邏輯處理器的數量。cpu cores 包含位于相同物理封裝中的內核數量。1. 擁有相同 physical id 的所有邏輯處理器共享同一個物理插座,每個 physical id 代表一個唯一的物理封裝。2. Siblings 表示位于這一物理封裝上的邏輯處理器的數量,它們可能支持也可能不支持超線程(HT)技術。3. 每個 core id 均代表一個唯一的處理器內核,所有帶有相同 core id 的邏輯處理器均位于同一個處理器內核上。簡單的說:“siblings”指的是一個物理CPU有幾個邏輯,CPU,”cpu cores“指的是一個物理CPU有幾個核。
4. 如果有一個以上邏輯處理器擁有相同的 core id 和 physical id,則說明系統支持超線程(HT)技術。5. 如果有兩個或兩個以上的邏輯處理器擁有相同的 physical id,但是 core id不同,則說明這是一個多內核處理器。cpu cores條目也可以表示是否支持多內核。總核數 = 物理CPU個數 X 每顆物理CPU的核數
總邏輯CPU數 = 物理CPU個數 X 每顆物理CPU的核數 X 超線程
查看物理CPU個數
# cat /proc/cpuinfo | grep "physical id"| sort| uniq| wc -l
查看每個物理CPU中core的個數(即核數)
# cat /proc/cpuinfo | grep "cpu cores"| uniq
查看邏輯CPU的個數
# cat /proc/cpuinfo | grep "processor"| wc -l
查看CPU信息(型號)
# cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c
查看各個物理CPU上面封裝的邏輯處理器(即超線程后的CPU)個數
# cat /proc/cpuinfo | grep siblings
查看內存大小
# cat /proc/meminfo | grep -i "memtotal"
--------------------------------------------------------------
查看當前操作系統發行版信息
# cat /etc/issue
查看cpu運行模式
# getconf LONG_BIT
32
(說明當前CPU運行在32bit模式下, 但不代表CPU不支持64bit)
# cat /proc/cpuinfo | grep flags | grep ' lm ' | wc -l
2結果大于0, 說明支持64bit計算. lm指long mode, 支持lm則是64bit)
#lscpu
Architecture: i686 #架構686
CPU(s): 2 #邏輯cpu顆數是2
Thread(s) per core: 1 #每個核心線程數是1
Core(s) per socket: 2 #每個cpu插槽核數/每顆物理cpu核數是2
CPU socket(s): 1 #cpu插槽數是1
Vendor ID: GenuineIntel #cpu廠商ID是GenuineIntel
CPU family: 6 #cpu系列是6
Model: 23 #型號23
Stepping: 10 #步進是10
CPU MHz: 800.000 #cpu主頻是800MHz
Virtualization: VT-x #cpu支持的虛擬化技術VT-x(對此在下一博文中解釋下
L1d cache: 32K #一級緩存32K(google了下,這具體表示表示cpu的L1數據緩存為32k)
L1i cache: 32K #一級緩存32K(具體為L1指令緩存為32K)
L2 cache: 3072K #二級緩存3072k
Product Name: VMware Virtual Platform
Product Name: 440BX Desktop Reference Platform
查看網卡信息
# dmesg | grep eth1
總結
以上是生活随笔為你收集整理的Linux下区分物理CPU、逻辑CPU和CPU核数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 使用docker快速搭建nginx+ph
- 下一篇: linux环境下vim创建java文件,