天天看點

[Linux 性能檢測工具]PIDSTAT

PIDSTAT

NAME

pidstat對linux任務的統計

文法

pidstat [ -C comm ] [ -d ] [ -h ] [ -I ] [ -l ] [ -p { pid [,...] | SELF | ALL } ] [ -r ] [ -t ] [ -T { TASK | CHILD | ALL } ] [ -u ] [ -V ] [ -w ] [ interval [ count ] ]

描述

pidstat指令用來監控目前被linux核心管理的獨立的任務。輸出-p參數的每個任務或者-p ALL輸出所有linux核心管理的任務。如果不寫參數預設為-p ALL不過隻有活動的任務會出現在報告中。

Pidstat指令可用來監控選擇任務的子程序。具體看-T選項。

Interval參數指定每次報告的間隔時間。如果為0表示報告從系統啟動後的統計資訊。Cout參數表示生成的報告數量。如果interval沒有指定count參數會一直生成。

你可以通過指定選項來指定活動的,如果不指定則隻有現實cpu活動。

選項

         -C comm

                  隻顯示包含comm字元串的任務。

         -d

                   報告IO統計顯示以下資訊:

        PID:程序id

        kB_rd/s:每秒從磁盤讀取的KB

        kB_wr/s:每秒寫入磁盤KB

        kB_ccwr/s:任務取消的寫入磁盤的KB。當任務截斷髒的pagecache的時候會發生。

        COMMAND:task的指令名

         -h

                   在一行上顯示了所有活動,這樣其他程式可以容易解析。

         -I

                   在SMP環境,表示任務的CPU使用率/核心數量

         -l

                   顯示指令名和所有參數

         -p{ pid [,...] | SELF | ALL }

         選擇一個任務(程序),報告統計資訊。Pid是程序辨別符。SELF關鍵字說明pidstat報告自己的程序,如果為ALL報告系統中所有的任務。

         -r

                   報告錯誤也和記憶體利用,當報告某個任務,顯示如下:

                            PID:程序辨別符

                            Minflt/s:任務每秒發生的次要錯誤,不需要從磁盤中加載頁

                            Majflt/s:任務每秒發生的主要錯誤,需要從磁盤中加載頁

                            VSZ:虛拟位址大小,虛拟記憶體的使用KB

                            RSS:常駐集合大小,非交換區五裡記憶體使用KB

                            Command:task指令名

                   當顯示全局統計所有任務和所有線程,會顯示以下值:

                            Minflt-nr:interval時間内,所有任務和子線程的次要錯誤。

                            Majflt-nr:interval時間内,所有任務和子線程的主要錯誤。

                            Command:指令名

         -t

                   顯示選擇任務的線程的統計資訊外的額外資訊:

                            TGID:主線程的表示

                            TID:線程id

         -T { TASK | CHILD | ALL }

       這個選項指定了pidstat監控的。TASK表示報告獨立的task,CHILD關鍵字表示報告程序下所有線程統計資訊。ALL表示報告獨立的task和task下面的所有線程。

       注意:task和子線程的全局的統計資訊和pidstat選項無關。這些統計資訊不會對應到目前的統計間隔,這些統計資訊隻有在子線程kill或者完成的時候才會被收集。

         -u

                   報告CPU使用率

                   報告獨立程序是顯示:

                            PID:程序id

                            %usr:使用者級别cpu使用率

                           %system:系統級别cpu使用率

                            %guest:虛拟處理器的cpu使用率

                            %CPU:總CPU使用率

                           CPU:程序使用到的cpu個數。

                            Command:指令名

                   當報告任務和所有線程全局統計資訊:

                            PID:程序id

                            Usr-ms:任務和子線程在使用者級别使用的毫秒數。

                            System-ms:任務和子線程在系統級别使用的毫秒數。

                            Guest-ms:任務和子線程在虛拟機(running a virtual processor)使用的毫秒數。

         -V

                   輸出版本号。

         -w

                   報告上下文切換活動:

                            Cswch/s:每秒主動任務上下文切換數量

                            Nvcswch/s:每秒被動任務上下文切換數量

繼續閱讀