溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

如何用正確的姿勢(shì)查看主機(jī)系統(tǒng)的CPU信息

發(fā)布時(shí)間:2022-01-05 09:05:02 來(lái)源:億速云 閱讀:182 作者:柒染 欄目:大數(shù)據(jù)

今天就跟大家聊聊有關(guān)如何用正確的姿勢(shì)查看主機(jī)系統(tǒng)的CPU信息,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

一、關(guān)于CPU的幾個(gè)概念

CPU的作用

計(jì)算機(jī)中的中央處理單元(CPU)執(zhí)行基本的計(jì)算工作 -- 運(yùn)行程序。但是,一個(gè)單核的CPU同一時(shí)間只能一次執(zhí)行一個(gè)任務(wù),為了提高計(jì)算機(jī)的處理能力,也就出現(xiàn)了多CPU,超線程(HT)和多核CPU的技術(shù)。

大多數(shù)計(jì)算機(jī)只有一個(gè)物理CPU。單個(gè)CPU可能具有多個(gè)內(nèi)核或超線程技術(shù),但是仍然只有一個(gè)物理CPU插入主板上的單個(gè)CPU插槽。在超線程和多核CPU出現(xiàn)之前,人們?cè)噲D通過添加額外的CPU,為計(jì)算機(jī)增加額外的處理能力。這需要一個(gè)帶有多個(gè)CPU插槽的主板 --將多個(gè)CPU插入不同的插槽。主板還需要額外的硬件將這些CPU插槽連接到RAM和其他資源。這里有很多開銷 -- 如果CPU需要相互通信,則會(huì)有額外的延遲,具有多個(gè)CPU的系統(tǒng)將消耗更多的電力,并且主板需要更多的插座和硬件以及電路。

在個(gè)人pc上,有多顆cpu的不多,不過在如今的服務(wù)器上,物理cpu一般都是2顆標(biāo)配。因?yàn)榉?wù)器需要更多的處理能力

 超線程(Hyper-Threading,簡(jiǎn)稱“HT”)”技術(shù)。超線程技術(shù)就是利用特殊的硬件指令,把兩個(gè)邏輯內(nèi)核模擬成兩個(gè)物理芯片,讓單個(gè)處理器都能使用線程級(jí)并行計(jì)算,進(jìn)而兼容多線程操作系統(tǒng)和軟件,減少了CPU的閑置時(shí)間,提高的CPU的運(yùn)行效率。

CPU之超線程(HT)

超線程技術(shù)是在一顆CPU同時(shí)執(zhí)行多個(gè)程序而共同分享一顆CPU內(nèi)的資源,理論上要像兩顆CPU一樣在同一時(shí)間執(zhí)行兩個(gè)線程,雖然采用超線程技術(shù)能同時(shí)執(zhí)行兩個(gè)線程,但它并不象兩個(gè)真正的CPU那樣,每個(gè)CPU都具有獨(dú)立的資源。CPU 仍然是單個(gè)CPU,而操作系統(tǒng)則看到了2個(gè)CPU,當(dāng)兩個(gè)線程都同時(shí)需要某一個(gè)資源時(shí),其中一個(gè)要暫時(shí)停止,并讓出資源,直到這些資源閑置后才能繼續(xù)。因此超線程的性能并不等于兩顆CPU的性能。

多核CPU

最初,CPU只有有一個(gè)核心。這意味著物理CPU有一個(gè)單一的中央處理單元。為了提高性能,制造商添加額外的“核心”或中央處理單元。雙核CPU有兩個(gè)中央處理單元,所以操作系統(tǒng)看起來(lái)是兩個(gè)CPU。不同的進(jìn)程可以同時(shí)使用每個(gè)核心。這樣可以加快系統(tǒng)處理速度,因?yàn)檫@時(shí)的計(jì)算機(jī)可以同時(shí)執(zhí)行多項(xiàng)任務(wù)。

與超線程不同,雙核CPU在 CPU 芯片上實(shí)際上有兩個(gè)中央處理單元,四核CPU有四個(gè)中央處理單元,八核CPU有八個(gè)中央處理單元,等等。這有助于顯著提高處理的性能,同時(shí)保持物理CPU單元的小型化,使其更適合單個(gè)插槽。只需要單個(gè)CPU插槽即可插入一個(gè)CPU單元 --- 而不是四個(gè)不同的CPU插槽,四個(gè)不同的CPU,每個(gè)都需要自己的電源,冷卻和其他硬件的連接消耗。因?yàn)樗鼈兌荚谕粋€(gè)芯片上,所有具有更少的延遲,核心可以更快的通信。

二、如何正確查看主機(jī)上的cpu相關(guān)數(shù)量呢?

總核心數(shù) = 物理CPU顆數(shù) * 每顆CPU上核心數(shù)

總線程數(shù)邏輯CPU數(shù)) = 物理CPU顆數(shù) * 每顆CPU上核心數(shù) * 每顆核心數(shù)上的線程  或者 總線程數(shù)(邏輯CPU數(shù)) = 總核心數(shù) * 每顆核心數(shù)上的線程

注意:此處的 ‘線程’ 和 ‘操作系統(tǒng)內(nèi)的線程’ 不是一回事,從cpu的角度來(lái)看,一個(gè)線程(“thread of execution”的簡(jiǎn)寫)只是一個(gè)有序的指令序列,告訴計(jì)算機(jī)該做什么。

第一種方式:

查看主機(jī)上物理cpu的顆數(shù)

[root@localhost ~]# cat /proc/cpuinfo |grep "physical id" | sort -u |wc -l2

查看主機(jī)上每顆cpu上的核心數(shù)

[root@localhost ~]# cat /proc/cpuinfo |grep "cpu cores"|sort -u
cpu cores    : 4

查看主機(jī)上總邏輯CPU數(shù)量(方式1)

[root@localhost ~]# cat /proc/cpuinfo |grep "core id"|wc -l8

快速查看主機(jī)上總邏輯CPU數(shù)量(方式2)

[root@localhost ~]# nproc --all8

快速查看主機(jī)上總邏輯CPU數(shù)量(方式3)

[root@localhost ~]# getconf _NPROCESSORS_ONLN8

快速查看主機(jī)上總邏輯CPU數(shù)量(方式4)

[root@localhost ~]# cat /sys/devices/system/cpu/online0-7

備注:0-7 :  從第0個(gè)到第7個(gè)

第二種方式:

使用lscpu 命令

[root@localhost ~]# lscpu 
...省略輸出
CPU(s):                8On-line CPU(s) list:   0-7Thread(s) per core:    1Core(s) per socket:    4Socket(s):             2
...省略輸出
Model name:            Intel(R) Xeon(R) CPU           E5620  @ 2.40GHz


從上面可以看出以下信息:
  Socket(s) : 物理cpu 顆數(shù)  2顆
  Core(s) per socket : 每顆CPU上核心數(shù)   4個(gè)
  Thread(s) per core : 每個(gè)核心的線程數(shù)  1個(gè)
  CPU(s): 總的邏輯CPU數(shù)

所以該機(jī)器上最大的線程數(shù)(邏輯CPU數(shù))就是: 2 CPU * 4 Cores * 1 threads = 8 threads

上面是沒有開啟超線程技術(shù),如果開啟超線程(HT)后,則應(yīng)該是 2 CPU * 4 Cores * 2 threads = 16 threads 
 下圖是上述處理器的詳細(xì)信息,如果你也對(duì)你的服務(wù)器核數(shù)不確定時(shí),可以先去官網(wǎng)進(jìn)行查詢:

如何用正確的姿勢(shì)查看主機(jī)系統(tǒng)的CPU信息

如何用正確的姿勢(shì)查看主機(jī)系統(tǒng)的CPU信息

另外補(bǔ)充下,如何在系統(tǒng)內(nèi)判斷主機(jī)是否開啟了超線程(HT)技術(shù)呢?請(qǐng)繼續(xù)往下看

第一種方式:

lscpu命令

[root@localhost ~]# lscpu 
...省略輸出
CPU(s):                8On-line CPU(s) list:   0-7Thread(s) per core:    1Core(s) per socket:    4Socket(s):             2...省略輸出

 Thread(s) per core 為1 則表示禁用了超線程或者該CPU不支持超線程,如果為2 則表示啟用了HT

第二種方式

[root@niunyun ~]# grep -E "cpu cores|siblings|physical id" /proc/cpuinfo |xargs -n 11 |sort -uphysical id : 0 siblings : 8 cpu cores : 4physical id : 1 siblings : 8 cpu cores : 4

從這里看下, siblings 是 cpu cores 的 2倍,這說(shuō)明啟用了超線程。如果沒啟用HT,則是相同的數(shù)字。

看完上述內(nèi)容,你們對(duì)如何用正確的姿勢(shì)查看主機(jī)系統(tǒng)的CPU信息有進(jìn)一步的了解嗎?如果還想了解更多知識(shí)或者相關(guān)內(nèi)容,請(qǐng)關(guān)注億速云行業(yè)資訊頻道,感謝大家的支持。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

cpu
AI