濮阳杆衣贸易有限公司

主頁 > 知識庫 > CentOS下如何查看多核負載?CentOS下查看多核負載的方法

CentOS下如何查看多核負載?CentOS下查看多核負載的方法

熱門標簽:怎樣在北斗地圖標注商戶 太原外呼電銷機器人軟件 電話外呼系統(tǒng)解決方案 400外呼系統(tǒng) 配置要求 辦理400電話的好處都有哪些 日立hgp外呼線路圖 貴港便宜外呼系統(tǒng)報價 廣州點撥外呼系統(tǒng)多少錢一個月 仙桃外呼系統(tǒng)

1. Linux下,如何看每個CPU的使用率:

#top -M

之后按下數字1. (或者top之后按1也一樣)則顯示多個CPU 的信息,和內存信息:

[root@testpc ~]# top -M

top - 15:38:40 up 2 days,  2:05,  2 users,  load average: 0.00, 0.00, 0.00

Tasks: 138 total,   1 running, 137 sleeping,   0 stopped,   0 zombie

Cpu0  :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st

Cpu1  :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st

Cpu2  :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st

Cpu3  :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st

Mem:  3725.047M total,  263.312M used, 3461.734M free,   45.711M buffers

Swap: 8095.992M total,    0.000k used, 8095.992M free,   55.977M cached

PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                        

    1 root      20   0 19228 1512 1224 S  0.0  0.0   0:00.61 init                                                                            

    2 root      20   0     0    0    0 S  0.0  0.0   0:00.00 kthreadd  

2. 在Linux下,如何確認是多核或多CPU:

#cat /proc/cpuinfo

如果有多個類似以下的項目,則為多核或多CPU:

processor       : 0

......

processor       : 1

3. 如何察看某個進程在哪個CPU上運行:

#top -d 1

之后按下f.進入top Current Fields設置頁面:

選中:j: P          = Last used cpu (SMP)

則多了一項:P 顯示此進程使用哪個CPU。

Sam經過試驗發(fā)現:同一個進程,在不同時刻,會使用不同CPU Core.這應該是Linux Kernel SMP處理的。

4. 配置Linux Kernel使之支持多Core:

內核配置期間必須啟用CONFIG_SMP選項,以使內核感知 SMP。

Processor type and features  ---> Symmetric multi-processing support

察看當前Linux Kernel是否支持(或者使用)SMP

#uname -a

5. Kernel 2.6的SMP負載平衡:

在 SMP 系統(tǒng)中創(chuàng)建任務時,這些任務都被放到一個給定的 CPU 運行隊列中。通常來說,我們無法知道一個任務何時是短期存在的,何時需要長期運行。因此,最初任務到 CPU 的分配可能并不理想。

為了在 CPU 之間維護任務負載的均衡,任務可以重新進行分發(fā):將任務從負載重的 CPU 上移動到負載輕的 CPU 上。Linux 2.6 版本的調度器使用負載均衡(load balancing) 提供了這種功能。每隔 200ms,處理器都會檢查 CPU 的負載是否不均衡;如果不均衡,處理器就會在 CPU 之間進行一次任務均衡操作。

這個過程的一點負面影響是新 CPU 的緩存對于遷移過來的任務來說是冷的(需要將數據讀入緩存中)。

記住 CPU 緩存是一個本地(片上)內存,提供了比系統(tǒng)內存更快的訪問能力。如果一個任務是在某個 CPU 上執(zhí)行的,與這個任務有關的數據都會被放到這個 CPU 的本地緩存中,這就稱為熱的。如果對于某個任務來說,CPU 的本地緩存中沒有任何數據,那么這個緩存就稱為冷的。

不幸的是,保持 CPU 繁忙會出現 CPU 緩存對于遷移過來的任務為冷的情況。

6. 應用程序如何利用多Core :

開發(fā)人員可將可并行的代碼寫入線程,而這些線程會被SMP操作系統(tǒng)安排并發(fā)運行。

另外,Sam設想,對于必須順序執(zhí)行的代碼。可以將其分為多個節(jié)點,每個節(jié)點為一個thread.并在節(jié)點間放置channel.節(jié)點間形如流水線。這樣也可以大大增強CPU利用率。

例如:

游戲可以分為3個節(jié)點。

1.接受外部信息,聲稱數據 (1ms)

2.利用數據,物理運算(3ms)

3.將物理運算的結果展示出來。(2ms)

如果線性編程,整個流程需要6ms.

但如果將每個節(jié)點作為一個thread。但thread間又同步執(zhí)行。則整個流程只需要3ms.

標簽:青島 六盤水 公主嶺 商丘 廣安 雅安 河源 麗水

巨人網絡通訊聲明:本文標題《CentOS下如何查看多核負載?CentOS下查看多核負載的方法》,本文關鍵詞  CentOS,下,如何,查看,多核,;如發(fā)現本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《CentOS下如何查看多核負載?CentOS下查看多核負載的方法》相關的同類信息!
  • 本頁收集關于CentOS下如何查看多核負載?CentOS下查看多核負載的方法的相關信息資訊供網民參考!
  • 推薦文章
    邢台县| 沙雅县| 闻喜县| 蕉岭县| 左贡县| 星座| 久治县| 潮州市| 长寿区| 林州市| 漾濞| 揭阳市| 溧阳市| 中西区| 盖州市| 黔西县| 灵璧县| 定兴县| 弋阳县| 兰坪| 盖州市| 象山县| 监利县| 汕头市| 独山县| 元氏县| 福安市| 临沭县| 嘉兴市| 平度市| 远安县| 江北区| 大埔县| 廉江市| 安徽省| 昌江| 邛崃市| 万全县| 连平县| 改则县| 阜宁县|