什麼可能佔用 100% cpu 但不會顯示在 (sudo) top 中

什麼可能佔用 100% cpu 但不會顯示在 (sudo) top 中

當我啟動 intellij(在啟動時載入「haxe」專案)時,有時會發生 intellij 掛起載入的情況。我然後用“sudo”啟動 htop (也嘗試過 top)。 iotop 也沒有顯示任何有趣的東西。

我可以看到我的一個 cpu 被「100%」使用(通常並非如此),但 htop 沒有顯示任何使用該 cpu 的進程。

一個cpu使用率100%的資訊來自htop。

還有什麼可能佔用 100% 的 cpu 時間以及如何找到它?

編輯

我收集了更多信息,vmstat 10 10(問題發生時)的輸出是這樣的:

procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 8  0      0 12013656 285632 2150392    0    0    63    47   71  244  5  1 93  1  0
11  0      0 12009724 285664 2150384    0    0     0    14  737 1238  6  4 90  0  0
11  0      0 11994592 285680 2150364    0    0     0     6  720  990  6  3 91  0  0
11  0      0 11994516 285704 2150364    0    0     0    12  689  610  6  3 91  0  0
11  0      0 12000456 285736 2150360    0    0     0    12  709  702  6  3 91  0  0
11  0      0 12000696 285760 2150364    0    0     0    22  696  630  6  3 91  0  0
11  0      0 12008016 285784 2150364    0    0     0    13  728  784  6  3 91  0  0
11  0      0 12008356 285816 2150356    0    0     0   232  678  924  6  3 90  0  0
11  0      0 12007908 285840 2150400    0    0     0    15  628  548  6  3 91  0  0
11  0      0 11998248 285872 2150392    0    0     0    35  978 1432 11  4 84  0  0

我也跑了:

ps -e -o state,pid,cmd | grep ^D

但輸出為空。

ps -e -o state,pid,cmd | grep \^R

返回:

R  1705 /usr/bin/gnome-shell
R  7113 zsh
R  7466 ps -e -o state,pid,cmd

(即使多次重複也不會改變)

答案1

Ubuntu 核心團隊有一個 wiki 可以解釋如何識別耗電應用程式。這可能有一些有用的想法或技巧來調試您的這個問題。

看:https://wiki.ubuntu.com/Kernel/PowerManagement/IdentifyingIssues

top 是查看最高 CPU 消耗者的有用工具,但它無法輕鬆發現生命週期短的進程或建立並很快消亡的執行緒。對於這些 CPU 消耗過程,我開發了 forkstat 來嘗試追蹤它們。它在最新版本的 Ubuntu 中可用,或者您可以從 ppa:colin-king/white 下載它(請參閱http://kernel.ubuntu.com/~cking/forkstat/

答案2

我最近遇到了這個問題。我發現這是由 microSD 的 SD 適配器引起的。當我插入帶有兩個分割區(一個 8GB vfat 和一個 24GB ext2)的 32GB SDHC U1 Samsung microSD 時,Lubuntu 無法偵測和安裝裝置。在 top/lxtask 中,我沒有看到任何使用 cpu 的進程,但我的 cpu 使用率穩定為 100%。當卡片被移除時,CPU 會下降到 0%。

相關內容