Cpu

AIX 7.2 Topas 顯示高 CPU

  • July 2, 2020

當我執行topas某個程序時,在 CPU% 列中它顯示為 43% 並躍升至 85%。

當我執行時:

"ps aux | grep processName"  

相同的過程為 5%。

什麼更準確?我還做了一個類似於 Linux 的“watch”命令的循環,我看到它位於 %5。

topas 和 ps 有什麼區別,誰是對的?

輸出ps

[ttfai231:root]/root>ps aux | head -1; ps aux | sort -rn +2 | head -10
USER          PID %CPU %MEM   SZ  RSS    TTY STAT    STIME  TIME COMMAND
root      9306548  8.6  1.0 12880 12880      - A    13:35:33 41:20 MYDAEMON
root      1048868  2.0  0.0  448  448      - A    13:22:36 11:50 wait

托帕斯: 在此處輸入圖像描述

我相信這是每個欄位計算方式的不同。對於topas領域:

% CPU 使用率

在監視時間間隔內程序的平均處理器使用率。第一次顯示程序時,該值是程序生命週期內的平均處理器使用率。

…而ps現場:

%中央處理器

(u 和 v 標誌)自程序啟動以來程序使用 CPU 的時間百分比。該值是通過將程序使用 CPU 的時間除以程序的已用時間來計算的。在多處理器環境中,該值進一步除以可用 CPU 的數量,因為同一程序中的多個執行緒可以同時在不同的 CPU 上執行。(由於計算此數據的時間基準不同,所有 %CPU 欄位的總和可能超過 100%。)

我已經將突出差異的描述部分加粗。

CPU% 值會隨著程序使用更多或更少的 CPU 時間而topas波動,因此它將顯示最近(可能很短)間隔內的 CPU 使用率;%CPU 值將ps始終顯示為程序生命週期內的平均值。

引用自:https://unix.stackexchange.com/questions/509929