Linux 效能分析-vmstat

    版本為 20:32, 20 Nov 2024

    到這個版本。

    返回到 版本存檔.

    查閱目前版本

    要瞭解 Linux/UNIX 的記憶體使用狀況,可以用 vmstat 工具,以下詳述這個工具的用法:

    指令用法

    #>vmstat 2

    Tip: 每2秒蒐集一次資訊

    報表分析

    報表範例

    [root@deki ~]# vmstat 2
    procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------
     r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
     0  0     60 163016 252108 363996    0    0     4   172   23   16  2  3 94  0  0
     0  0     60 163016 252108 363996    0    0     0    60 1025  248  0  0 100  0  0
     0  0     60 163016 252108 364000    0    0     0     0 1073  416  3  4 94  0  0
     0  0     60 163016 252108 364000    0    0     0     0 1042  248  0  0 100  0  0
     0  0     60 163016 252108 364000    0    0     0    54 1030  249  0  0 99  0  0
     0  0     60 163016 252108 364000    0    0     0     0 1032  247  0  1 100  0  0
     0  0     60 163016 252108 364000    0    0     0     0 1035  228  0  0 100  0  0
     0  0     60 162892 252108 364000    0    0     0    12 1041  516 12 68 21  0  0
     0  0     60 162892 252108 364000    0    0     0     0 1020  240  0  0 100  0  0
     0  0     60 162892 252108 364000    0    0     0    42 1024  249  0  0 100  0  0
     0  0     60 162892 252108 364000    0    0     0     0 1035  248  0  0 100  0  0
     0  0     60 162892 252108 364000    0    0     0     2 1029  267  0  1 99  0  0
     0  0     60 163016 252108 364000    0    0     0     0 1018  219  0  0 100  0  0
     0  0     60 163016 252108 364000    0    0     0    12 1026  603  7  8 85  0  0
     1  0     60 163016 252108 364004    0    0     0     0 1044  270  0  0 100  0  0
     0  0     60 163016 252108 364004    0    0     0     0 1025  267  0  0 100  0  0
     7  0     60 162272 252108 364004    0    0     0    54 1026 1127  8 14 78  0  0
    
    

    Tips:

    r - 執行中或等待執行的程序數量
    b - 未中斷的休眠中程序數量,例如等待 IO,或正在作 Swaping
    swpd - 目前已使用的虛擬記憶(KB)
    free - 目前尚未被使用的實體記憶體(KB)
    buff - 目前在暫存區用於讀/寫操作的實體記憶體(KB)
    cache - 目前對應程序位址空間的實體記憶體(KB)
    si - 從 swap disk 讀取到 RAM(KB)
    so - 從 RAM 寫入 swap disk(KB)
    bi - 從檔案系統或 swap disk 讀取的分頁區塊
    bo - 從 RAM 寫到 swap disk 的分頁區塊

    結果分析
    1. r 值若連續大於 1 甚至更大的數字,表示 CPU 效能不足。
    2. 當主程序在運行時,較少的 free 是好事,這表示 cache 使用更有效率,除非是有不斷的寫入 swap disk (so,bo)。
    3. cache 值如果較大,且 bi 值小,表示檔案系統效率好。
    4. 如果 bi, bo 連續不等於 0,表示記憶體 swapping 頻繁,RAM 不足。
    5. kswapd 程序服務是負責確保閒置的記憶體可被釋放,每次啟動掃描會嘗試釋放 32 個 pages,並且一直在重複這個程序,直到閒置記憶體的數值高於 pages_high(核心參數)。
    6. pdflush 程序服務將記憶體中的內容與檔案系統進行同步操作,確保記憶體資料寫到硬碟。
    Powered by MindTouch Core