天天看點

Linux下區分實體CPU、邏輯CPU和CPU核數

 ㈠ 概念

           ① 實體CPU 

              實際Server中插槽上的CPU個數

              實體cpu數量,可以數不重複的 physical id 有幾個           

           ② 邏輯CPU               

              Linux使用者對 /proc/cpuinfo 這個檔案肯定不陌生. 它是用來存儲cpu硬體資訊的

              資訊内容分别列出了processor 0 – n 的規格。這裡需要注意,如果你認為n就是真實的cpu數的話, 就大錯特錯了

              一般情況,我們認為一顆cpu可以有多核,加上intel的超線程技術(HT), 可以在邏輯上再分一倍數量的cpu core出來

              邏輯CPU數量=實體cpu數量 x cpu cores 這個規格值 x 2(如果支援并開啟ht)  www.2cto.com  

              備注一下:Linux下top檢視的CPU也是邏輯CPU個數              

           ③ CPU核數           

              一塊CPU上面能處理資料的晶片組的數量、比如現在的i5 760,是雙核心四線程的CPU、而 i5 2250 是四核心四線程的CPU           

           一般來說,實體CPU個數×每顆核數就應該等于邏輯CPU的個數,如果不相等的話,則表示伺服器的CPU支援超線程技術            

       ㈡ 檢視CPU資訊          

          當我們 cat /proc/cpuinfo 時、

          具有相同core id的CPU是同一個core的超線程

          具有相同physical id的CPU是同一個CPU封裝的線程或核心            

       ㈢ 下面舉例說明     

        ① 檢視實體CPU的個數

[plain] 

#cat /proc/cpuinfo |grep "physical id"|sort |uniq|wc -l  

2   

        ② 檢視邏輯CPU的個數

#cat /proc/cpuinfo |grep "processor"|wc -l  

24   

        ③ 檢視CPU是幾核

#cat /proc/cpuinfo |grep "cores"|uniq  

6    

       我這裡應該是2個Cpu,每個Cpu有6個core,應該是Intel的U,支援超線程,是以顯示24 

繼續閱讀