【E問E答】90%的CPU使用率意味著什么?
CPU使用率(CPU utilization)直觀顯示了運行程序占用的CPU資源,使用率越高,說明你的機器在這個時間上運行了很多程序,一般情況下,CPU占了100%的話我們的電腦就會明顯慢下來。
本文引用地址:http://butianyuan.cn/article/201705/359573.htm但你知道嗎?我們用來衡量CPU使用率的這一指標具有極大的誤導性,而且一年比一年來得誤人子弟。
Brendan Gregg是Netflix的高級性能架構(gòu)師,他在那里做大規(guī)模計算機性能設計、分析和調(diào)優(yōu)。他是《Systems Performance》等技術(shù)書的作者,曾獲得過2013年USENIX LISA大獎。
5月9日,他在個人博客發(fā)表了一篇《CPU Utilization is Wrong(CPU使用率是錯誤的)》博文,指出CPU使用率已成為一個極具誤導性的度量指標。
你可能認為90%的CPU使用率意味著:
而實際上它可能意味著:
停滯(stalled)意味著處理器在處理指令方面處于停滯狀態(tài),通常是由于處理器在等待內(nèi)存輸入/輸出,這在現(xiàn)實生活生產(chǎn)中時刻存在,但大多數(shù)人渾然不知。
Brendan Gregg表示,現(xiàn)如今,CPU的速度已變得比主內(nèi)存快得多,如果你看到數(shù)值很高的%CPU,可能認為處理器是瓶頸,而實際上那些DRAM模組才是瓶頸。
了解你的多少CPU處于停滯狀態(tài)可以指導減少代碼或減少內(nèi)存輸入/輸出之間的性能調(diào)優(yōu)工作。誰要是在關(guān)注CPU性能,尤其是在根據(jù)CPU自動擴展資源的云,如果知道%CPU中停滯的部分,那將大有益處。
當然,Brendan Gregg是從開發(fā)人員角度闡述的,對于普通消費者,CPU使用率依然是個簡單好用的性能展示工具。
評論