CPU邏輯數量、CPU物理核心、幾核幾線程簡述
1. CPU 物理核心
CPU物理核心就是計算機上實際配置的CPU個數。
在 Linux 上可以開啟 cat /proc/cpuinfo 來檢視,其中的 physical id 就是每個物理CPU的ID,你能找到幾個 physical id 就代表你的計算機實際有幾個CPU。
在 Linux 下可以通過以下指令 來檢視你的物理CPU個數
grep ‘physical id’ /proc/cpuinfo | sort -u | wc -l
2. CPU 核數
CPU核數是指CPU上整合的處理資料的 CPU核心個數,單核指 CPU 核心數一個,雙核則指的是兩個。
通常每個 CPU 下的核數都是固定的,比如你的計算機有兩個物理CPU,每個CPU是雙核,那麼你的計算機就是四核的。
Linux 的CPU核心總數也可以在 /proc/cpuinfo 裡面通過指令 cat /proc/cpuinfo 檢視的到,其中的 core id 指的是每個物理CPU下的 CPU 核的 id,能找到幾個 core id 就代表你的計算機有幾個核心。
在 Linux 下可以通過以下指令 來檢視你的 CPU 核心總數
cat /proc/cpuinfo | grep “cpu cores” | wc -l
3. CPU邏輯
作業系統可以使用邏輯 CPU 來模擬出真實 CPU 的效果。
在之前沒有多核處理器的時候,一個 CPU 只有一個核,而現在有了多核技術,其效果就好像把多個 CPU 集中在一個 CPU 上。
當計算機沒有開啟超執行緒時,邏輯 CPU 的個數就是計算機的核數。而當超執行緒開啟後,邏輯 CPU 的個數是核數的兩倍。實際上邏輯 CPU的數量就是平時稱呼的幾核幾線程中的執行緒數量,在 Linux 的 cpuinfo 中邏輯 CPU 數就是 processor 的數量。
在 Linux 下可以通過以下指令 來檢視你的 CPU 邏輯數量
cat /proc/cpuinfo | grep “processor” | wc -l
4. 總結
簡單總結以下:
CPU 總核數 = 物理 CPU 個數 X 每顆物理 CPU 的核數
CPU 邏輯數 = 物理 CPU 個數 X 每顆物理 CPU 的核數 X 超執行緒數
知道上面這些,我們常說的幾核幾線程就好理解了。假設計算機有一個物理CPU核心,是雙核的,支援超執行緒。那麼這臺計算機就是雙核四執行緒的。
5. python檢視CPU邏輯總數和CPU物理核心
利用python的第三方模組psutil, 可以很輕鬆的檢視自己的電腦的 CPU 邏輯總數和 CPU 物理核心個數;程式碼如下:
import psutil
print(psutil.cpu_count()) # CPU邏輯數量
print( psutil.cpu_count(logical=False)) # CPU物理核心 # 2說明是雙核超執行緒, 4則是4核非超執行緒
以上內容借鑑於一位前輩的資源,感謝!
希望能夠幫助到大家,有什麼問題可以 直接評論即可,如果不夠詳細的話也可以說,我會及時回覆的。