1. 程式人生 > >檢視伺服器CPU的個數、CPU的核數、多核超執行緒數

檢視伺服器CPU的個數、CPU的核數、多核超執行緒數

這裡有幾個概念:

1、一臺物理機的物理CPU的個數

2、一個CPU上的核數

3、一個核上面支援的執行緒數

有下面的計算公式:

# 總核數 = 物理CPU個數 X 每顆物理CPU的核數 
# 總邏輯CPU數 = 物理CPU個數 X 每顆物理CPU的核數 X 超執行緒數

# 檢視CPU資訊(型號)
cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c
        Intel(R) Xeon(R) CPU E5-2630 0 @ 2.30GHz

# 檢視物理CPU個數
 cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l
2

# 檢視每個物理CPU中core的個數(即核數)
 cat /proc/cpuinfo| grep "cpu cores"| uniq
cpu cores    : 6

# 檢視邏輯CPU的個數
cat /proc/cpuinfo| grep "processor"| wc -l
24

CPU架構

多個物理CPU,各個CPU通過匯流排進行通訊,效率比較低,如下

多核CPU,不同的核通過L2 cache進行通訊,儲存和外設通過匯流排與CPU通訊,如下:

多核超執行緒,每個核有兩個邏輯的處理單元,兩個執行緒共同分享一個核的資源,如下: 

從上面執行的結果來看,證明我使用的cpu有2 * 6 = 12核,每個核有2個超執行緒,所以有24個邏輯cpu。

檢視內 存資訊
 cat /proc/meminfo
MemTotal:       264420688 kB
MemFree:        40804524 kB
Buffers:         4100728 kB
Cached:         145047804 kB
SwapCached:        52852 kB
Active:         124676420 kB
Inactive:       76193484 kB
Active(anon):   47186960 kB
Inactive(anon):  4805988 kB
Active(file):   77489460 kB
Inactive(file): 71387496 kB
Unevictable:      364616 kB
Mlocked:           74368 kB
SwapTotal:      16777212 kB
SwapFree:       16420884 kB
Dirty:              8072 kB
Writeback:             0 kB
AnonPages:      52040468 kB
Mapped:           513736 kB
Shmem:            263984 kB
Slab:           19881608 kB
SReclaimable:   19098060 kB
SUnreclaim:       783548 kB
KernelStack:       95088 kB
PageTables:       315300 kB
NFS_Unstable:          0 kB
Bounce:                0 kB
WritebackTmp:          0 kB
CommitLimit:    148987556 kB
Committed_AS:   106430376 kB
VmallocTotal:   34359738367 kB
VmallocUsed:      812804 kB
VmallocChunk:   34225494280 kB
HardwareCorrupted:     0 kB
AnonHugePages:  46950400 kB
HugePages_Total:       0
HugePages_Free:        0
HugePages_Rsvd:        0
HugePages_Surp:        0
Hugepagesize:       2048 kB
DirectMap4k:        7168 kB
DirectMap2M:     2015232 kB
DirectMap1G:    266338304 kB

參考: