% CPU
又稱:CPU百分比、CPU超過100%
簡短回答
「% CPU」是某個程序使用的處理器能力比例,以單一CPU核心為單位計算。因為每個核心各算100%,同時使用多個核心的程序可能會顯示超過100%。
「活動監視器」中的「% CPU」欄位告訴你,某個程序讓處理器有多忙。100%表示這個程序相當於完全用滿一個核心。在有八個核心的Mac上,所有程序加起來的上限是800%。
數值高不一定是問題。輸出影片、編譯程式碼或為檔案建立索引,本來就會在一段時間內使用大量CPU。只有在你沒要它做任何事,某個程序卻一直居高不下時,才算是問題。
為什麼「% CPU」會超過100
「活動監視器」會把一個程序在每個核心上花的時間加總起來。如果一個App同時在三個核心上全速執行,就會顯示大約300%。對於影片編輯器、編譯器和瀏覽器這類為多執行緒設計的App,這很正常。
「CPU」標籤頁底部的「系統」、「使用者」和「閒置」數值則不同。它們描述的是整個處理器,所以三者加起來是100%。
「% CPU」沒告訴你的事
「% CPU」衡量的是核心有多少時間在忙,而不是核心跑得多快。在Apple晶片上,效能核心和節能核心都可能顯示100%,完成的工作量卻差很多。
它也看不出App是否還有回應。一個App可能在等待某樣東西時當住,CPU卻是0%;也可能用到400%,仍然回應正常。
如何找出是什麼在使用CPU
打開「活動監視器」,按一下「CPU」標籤頁,再按一下「% CPU」欄位標題,由高到低排序。觀察幾秒鐘,因為每次更新數值都會變。
在「終端機」中,top -o cpu會顯示同樣依CPU使用量排序的列表。按q離開。
如何查出你Mac上「% CPU」的最大值
「% CPU」的上限是100%乘以macOS可以排程工作的核心數量。你可以在「終端機」中查到這個數字,不必用猜的。
- 從「應用程式」>「工具程式」打開「終端機」。
- 執行
sysctl -n hw.logicalcpu。它會輸出邏輯核心的數量。 - 把這個數字乘以100。這就是所有程序加起來能顯示的最大「% CPU」,也是單一程序讓所有核心都忙碌時能達到的最大值。
- 在搭載Apple silicon的Mac上,執行
sysctl hw.perflevel0.logicalcpu hw.perflevel1.logicalcpu查看這些核心中有多少個效能核心、多少個節能核心。
Apple silicon和Intel:怎樣才算一個核心
在支援超執行緒的Intel Mac上,每個實體核心會顯示為兩個邏輯核心。sysctl -n hw.physicalcpu顯示實體核心數量,sysctl -n hw.logicalcpu顯示邏輯核心數量,而「% CPU」是以邏輯核心數量計算的。所以一台有四個實體核心的Intel Mac,可能會顯示某個程序高達800%。
Apple silicon不使用超執行緒,所以實體核心和邏輯核心的數量相同。Apple silicon的差異在於效能核心和節能核心的組合。在節能核心上達到100%的程序,完成的工作比在效能核心上達到100%的程序少。
如果你想知道某個App是否在Apple silicon上原生執行,請選擇「顯示方式」>「直欄」並開啟「類型」。原生App會顯示「Apple」,透過Rosetta轉譯執行的App會顯示「Intel」。
如何判斷App是否真的使用了過多CPU
Apple指出,大部分時候你的Mac只會用到一小部分的處理能力。數值高但你說得出原因,就沒有問題。以下跡象才代表真的有問題:
- 你沒在使用這個App,它卻連續好幾分鐘居高不下。
- 它穩定停在100%左右不動。這通常代表有一個執行緒陷入迴圈,用滿了一整個核心。
- App待在背景時,它的「CPU時間」欄仍在快速攀升。
- 同時風扇變大聲、Mac摸起來發熱,或電池掉得比平常快。
- 關掉引發這些工作的視窗、文件或標籤頁後,數值仍然沒有下降。
某個App讓CPU一直忙碌時該怎麼辦
- 在活動監視器中按一下「CPU」標籤頁,依「% CPU」排序。觀察一分鐘,以免被短暫的高峰誤導。
- 如果這個程序是輔助程式,請選擇「顯示方式」>「所有程序(依階層排列)」,看看它屬於哪個App。
- 儲存你的工作,然後正常結束App。如果它沒有回應,請選擇它並使用「強制結束」。
- 再次打開App。如果CPU使用率又莫名其妙地升高,請看看開發者是否有推出更新。
- 如果問題一再發生,請在活動監視器中為該程序取樣,並傳給開發者。取樣會顯示App當時在做什麼。
大家常問的問題
Mac上的「% CPU」超過100是什麼意思?
表示這個程序同時使用了不只一個CPU核心。每個核心算100%,所以用滿兩個核心的程序會顯示200%。
App的「% CPU」多少算正常?
你沒在用的App,大部分時間通常應該接近0%。短暫的高峰很正常。背景App連續幾分鐘居高不下,就值得仔細看看。
為什麼什麼都沒打開,Mac的CPU使用率卻很高?
macOS會執行背景作業,例如Spotlight索引、照片分析和備份,而且常常趁Mac閒置時進行。這些作業完成後,通常就會緩和下來。
Mac上CPU使用率100%是壞事嗎?
本身不是。100%表示一個核心完全忙碌,這在輸出或編譯時很正常。只有在App應該閒置時還一直如此,才是問題。
為什麼「CPU負載」圖表看起來還空著一半,某個App卻顯示400% CPU?
單一程序的「% CPU」是以一個核心計算的,而「系統」、「使用者」和「閒置」數值描述的是整個處理器。在有八個核心的Mac上,達到400%的程序大約用了總量的一半。
活動監視器多久更新一次「% CPU」?
你可以透過「顯示方式」>「更新頻率」來選擇:「非常頻繁(1秒)」、「頻繁(2秒)」或「正常(5秒)」。Apple指出,更新越快,本身也可能影響效能。
相關詞條
逐步教學:哪個App在使用我的CPU或記憶體。
想找比活動監視器更好的工具?請參閱Mac上最好用的活動監視器替代方案,或瀏覽詞彙表中的所有詞條。