Performance
如何分析頂級命令結果:CPU & RAM 消耗
我正在研究基於 ARM 的處理器(作業系統版本:Linux 3.4.35),我需要在某些程序執行時分析處理器的性能,通過鍵入 top 命令,我可以看到一些統計資訊,但我不明白那裡的細節,我應該尋找什麼資訊?
這裡是我需要了解的細節(CPU usr和CPU sys之間的區別,什麼是nic,idle,io irq和sirq以及如何清除記憶體的RAM):
Mem: 32184K used, 648K free, 0K shrd, 676K buff, 7536K cached CPU: 11.7% usr 29.4% sys 0.0% nic 41.1% idle 11.7% io 0.0% irq 5.8% sirq
開始學習給定 Linux/Bash 命令的最佳位置是參考給定命令的手冊頁或手冊頁。
這是一個
top
聯機幫助頁的連結。在 shell 中,您應該能夠通過簡單地執行來閱讀手冊頁man top
。我還將包括一個指向部落格的連結,解釋top
.您的問題的相關部分可以在第2b 部分找到。手冊頁的TASK 和 CPU狀態:
預設情況下,會顯示這些單獨類別的百分比。在下面顯示兩個標籤的地方,首先顯示的是較新核心版本的標籤。
us, user : time running un-niced user processes sy, system : time running kernel processes ni, nice : time running niced user processes id, idle : time spent in the kernel idle handler wa, IO-wait : time waiting for I/O completion hi : time spent servicing hardware interrupts si : time spent servicing software interrupts
us
和ni
分別是在未處理和處理過的程序上花費的 CPU 使用率百分比。好的值是使用者空間程序,它們要麼好要麼不好,因為它們可以被賦予一個優先值,要麼合作,要麼避開更重要的核心或系統程序,要麼不合作。這是一個連結,指向一個相當直截了當的友好性和優先級解釋。其他的應該相當簡單:
idle
是處理器的多少容量是空閒或未使用的。io
是處理器的輸入/輸出隊列。irq
分別srq
是硬體中斷和軟體中斷。如果您想了解有關如何對
top
輸出進行排序的更多資訊,請參閱相關的 Stack Overflow 文章。此外,如果您想了解有關清除記憶體記憶體/緩衝區的更多資訊,請參閱U &L 堆棧交換文章。請閱讀我提供的所有連結,如果需要,您應該更深入地研究一下 Linux 處理和記憶體處理的工作原理。網上有大量的資訊。