1. 程式人生 > >AWR報告中的CPUs、Cores是哪個是物理核數、哪個是邏輯核數?

AWR報告中的CPUs、Cores是哪個是物理核數、哪個是邏輯核數?

AWR報告中的CPUsCores是哪個是物理核數、哪個是邏輯核數?

本文分兩個版本10g AWR報告和11gAWR報告的物理核數和邏輯核數看法11g AWR看法:http://img.blog.itpub.net/blog/attachment/201701/12/29067253_14842233035d87.png

檢視物理CPU的插槽數 -------》對應Sockets(看出真正的物理核數)

[[email protected] ~]$ cat /proc/cpuinfo |grep "physical id"|sort |uniq|wc -l

4

檢視邏輯CPU的個數 -------》對應CPUs

[[email protected] ~]$ cat /proc/cpuinfo |grep "processor"|wc -l

48

檢視每顆CPU封裝的是幾核 -------》對應Cores/Sockets,對應siblings/執行緒數

[[email protected] ~]$ cat /proc/cpuinfo |grep "cores"|uniq

cpu cores : 6

cat /proc/cpuinfo 關於CPU的核心引數明:physical idCPU的物理封裝的號,從0開始依次編碼;(看出真正的物理核數)siblings  每一個物理封裝上的邏輯核心數目cpu cores 每個物理封裝上的物理核心數目;core id   當前物理核心在物理封裝上的processor 邏輯

CPU核心號,從0開始依次編碼上述數字關係:siblings/(cpu cores) = 每一個物理封裝上的邏輯核心數目/每個CPU物理核心下邏輯CPU數目,如果等於1 則沒有超執行緒,如果大於1則有超執行緒;邏輯核數自己算出公式:siblings*(max(physical id) +1) = 機器所有邏輯核心的數目 = max(processor)+1  

總結對應關係:

CPUs是指代邏輯CPU數量,即processor;

Cores是 不考慮執行緒的 真實CPU核數,即單顆CPU封裝核數×插槽數 (本圖中6×4);

Sockets指代主機板上的CPU插槽,即該伺服器支援的最大的CPU數量(只有在該伺服器的CPU滿配的情況下,該值才等於真正的CPU物理數量,否則一般情況下該值都大於真正的物理CPU數量)。

結論:該伺服器CPU使用了超程技,主機板上4CPU插槽,滿4CPU物理封裝,每個CPU物理封裝有6個物理核心,一共4*6=24個物理核心,使用超程,24*2=48邏輯核心。 以上參考:http://blog.itpub.net/29067253/viewspace-2132363/重點參考英文文件:  

WORKLOAD REPOSITORY report for

DB Name         DB Id    Instance     Inst Num Startup Time    Release     RAC ------------ ----------- ------------ -------- --------------- ----------- --- SLOB          3521916847 SLOB                1 29-Sep-12 05:27 11.2.0.3.0  NO

Host Name        Platform                         CPUs Cores Sockets Memory(GB) ---------------- -------------------------------- ---- ----- ------- ---------- NNNN             Linux x86 64-bit                   32    16       2      62.87

We all know that E5-2680 is an 8-core part with SMT (Simultaneous Multi-threading) enabled. Further, this was a 2U 2-socket box. So, sure, 2 sockets and a sum of 16 cores. However, with SMT I get 32 “CPUs”. I’ve quoted CPU because they are logical processors.

 我們知道E5-2680是一個八核,支援超執行緒技術的CPU。它擁有2CPU插槽。所以,滿配可以獲得16個物理核心(cores)。並且,通過超執行緒技術我獲得了32CPU。我引用這個CPU數,是因為這是邏輯CPU數。

10g AWR看法:

http://img.blog.itpub.net/blog/attachment/201711/21/28853590_1511249499mE1M.png?x-oss-process=style/bb 

10gAWR報告中

NUM_CPUS是邏輯CPU核數為40

NUM_CPU_SOCKETSCPU插槽數為2socket槽數,插座)

NUM_CPUS除以220,即是siblings(單詞:兄弟姐妹,可以理解為每一顆CPU都有兄弟姐妹,所以是單顆封裝的CPU核數×執行緒數),

,再除以執行緒數,可以得出單顆CPU封裝了10CPU,這裡是滿配,超執行緒之前的真實核數是20

                                結論:該伺服器CPU使用了超執行緒技術,主機板上2CPU插槽,滿配2CPU物理封裝,

每個CPU物理封裝有10個物理核心,一共2*10=20個物理核心,使用超執行緒,20*2=40個邏輯核心。