Linux/UNIX下的哲學核心思想是'一切皆文件'。硬件信息也記錄在了文件中。
經過cat /proc/cpuinfo 來查看CPU相關詳細信息。bash
- vendor id 若是處理器爲英特爾處理器,則字符串是 GenuineIntel。
- processor 包括這一邏輯處理器的惟一標識符。
- physical id 包括每一個物理封裝的惟一標識符。
- core id 保存每一個內核的惟一標識符。
- siblings 列出了位於相同物理封裝中的邏輯處理器的數量。
- cpu cores 包含位於相同物理封裝中的內核數量。
根據上述規則,能夠計算獲得:服務器
實際物理機中插槽上的CPU個數。ui
即物理CPU數量,能夠數不重複的 physical id 有幾個,查看方法線程
grep "physical id" /proc/cpuinfo | sort | uniq | wc -l
單塊CPU
上面能處理數據的芯片組的數量即CPU核數,如雙核、四核等 (cpu cores)。
。通常來講,物理CPU個數×每顆核數就應該等於邏輯CPU
的個數;若是不相等的話,則表示服務器的CPU支持超線程技術
code
cat /proc/cpuinfo | grep "cpu cores" | uniq grep "cpu cores" /proc/cpuinfo | uniq | awk -F ":" "{print $2}"
Linux用戶對 /proc/cpuinfo 這個文件確定不陌生。它是用來存儲CPU硬件信息的
信息內容分別列出了processor 0 – n
的規格。這裏須要注意,若是你認爲n就是真實的CPU數的話, 就大錯特錯了。字符串
通常狀況,咱們認爲一顆CPU能夠有多核
,加上intel的超線程技術(Hyper-Threading)
, 能夠在邏輯上再分一倍數量的cpu core出來邏輯CPU數量=物理CPU數量 x cpu cores 這個規格值 x 2(若是支持並開啓ht)
。class
若是有一個以上邏輯處理器擁有相同的 core id 和 physical id,則說明系統支持超線程(HT)技術
awk
備註一下:Linux下top查看的CPU也是邏輯CPU
個數。硬件
cat /proc/cpuinfo | grep "processor" | wc -l