1. 程式人生 > 其它 >Linux 檢視 CPU 物理/邏輯 核心數

Linux 檢視 CPU 物理/邏輯 核心數

一、基本概念

為了給電腦更高的效能,一臺計算機可以包含多個物理 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