Linux 檢視 CPU 物理/邏輯 核心數
阿新 • • 發佈:2021-12-20
一、基本概念
為了給電腦更高的效能,一臺計算機可以包含多個物理 CPU,一個物理 CPU 中可以集成了多個核心,這樣電腦的效能就能成倍的提升.隨著科技的發展,我們發現每個核心的效能也是十分強大的,於是一個核心又被分成兩個執行緒.但是,我們要注意的是,一個 CPU 分成多個核心,這是物理的分隔,拆開 CPU 是可以看到的;但是一個核心被分成兩個執行緒是一種超執行緒技術,也就是串程式碼,作業系統會認為一個執行緒也是一個核心,這其實就有點欺騙作業系統的感覺了
二、計算公式
總核數 = 物理 CPU 個數 x 每個物理 CPU 的核數 邏輯 CPU 個數 = 物理 CPU 個數 x 每個物理 CPU 的核數 x 超執行緒數
三、Linux 查詢命令
# 檢視物理 CPU 的個數(uniq:去重) cat /proc/cpuinfo | grep "physical id" | sort | uniq # 查詢每個物理 CPU 的核心數 cat /proc/cpuinfo | grep "cpu cores" | sort | uniq # 檢視每個物理 CPU 核心上的邏輯處理個數 cat /proc/cpuinfo | grep 'siblings' | sort | uniq # 檢視邏輯 CPU 的個數 cat /proc/cpuinfo | grep "processor" | sort | uniq
四、驗證
1、伺服器一
物理 CPU 個數: 2
每個物理 CPU 上核心數: 2
每個物理 CPU 封裝的處理器數量: 2 (每個 CPU 上的處理器數量 = 核心數的倍數,代表未開超執行緒)
邏輯 CPU 的個數: 4
2、伺服器二
物理 CPU 個數: 2
每個物理 CPU 上核心數: 8
每個物理 CPU 封裝的處理器數量: 16 (每個 CPU 上的處理器數量是核心數的倍數,代表開了超執行緒)
邏輯 CPU 的個數: 32