概述
今天分享關於CPU核數的內容,在對服務器資源做把控的時候還是很有用的~
計算公式
CPU總核數 = 物理CPU個數 * 每顆物理CPU的核數
總邏輯CPU數 = 物理CPU個數 * 每顆物理CPU的核數 * 超線程數
查看CPU信息(型號)
[root@AAA ~]# cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c
24 Intel(R) Xeon(R) CPU E5-2630 0 @ 2.30GHz
# 查看物理CPU個數
[root@AAA ~]# cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l
2
# 查看每個物理CPU中core的個數(即核數)
[root@AAA ~]# cat /proc/cpuinfo| grep "cpu cores"| uniq
cpu cores : 6
# 查看邏輯CPU的個數
[root@AAA ~]# cat /proc/cpuinfo| grep "processor"| wc -l
24
CPU架構
多個物理CPU,CPU通過總線進行通信,效率比較低,如下:
多核CPU,不同的核通過L2 cache進行通信,存儲和外設通過總線與CPU通信,如下:
多核超線程,每個核有兩個邏輯的處理單元,兩個核共同分享一個核的資源,如下:
從上面執行的結果來看,證明我使用的cpu有2 * 6 = 12核,每個核有2個超線程,所以有24個邏輯cpu。
關於linux服務器物理CPU個數、核數、邏輯CPU個數的內容就介紹到這了,一般是在我們統計服務器資源情況需要查到,大家可以做個備忘錄!
後期會更多分享DBA和devops內容,感興趣的朋友可以關注下!
閱讀更多 波波說運維 的文章