您好,登錄后才能下訂單哦!
今天小編給大家分享一下Linux kworker占用CPU過高怎么辦的相關知識點,內容詳細,邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。
先打開HTOP
htop
然后按H K(大寫)
我們看到Kworker/0:0+events占用了大量CPU,下面參考下人家的回答
什么是kworker? kworker表示進行“工作”(處理系統調用)的Linux內核進程。在進程列表中可以有多個:kworker/0:1在第一個CPU內核上kworker/1:1是一個,在第二個CPU內核上是一個,依此類推。
為什么kworker占用您的CPU?要找出kworker浪費您CPU的原因,您可以創建CPU回溯:觀察您的處理器負載(有top或沒有),并在高負載kworker時執行,echo l > /proc/sysrq-trigger以創建回溯。(在Ubuntu上,這需要您使用登錄sudo -s)。這樣做幾次,然后在dmesg輸出結束時觀察回溯。查看CPU回溯中經常發生的情況,希望它可以指出問題的根源。
安裝perf
sudo dnf install perf.aarch74 #我用的華為云鯤鵬arm的,自行修改
記錄所有CPU上10S回溯記錄
sudo perf record -g -a sleep 10
然后會在當前目錄下生成一個perf.data
用以下命令查看
sudo perf report
我們看到arch_cpu_idle占用大量CPU。于是問了Fedora telegram群里的,翻了下arch/arm64/kernel/process.c
結論居然根本沒有其他進程在使用CPU,Linux會自動保存CPU運作。(以后我會把博客轉到自己的網站上zhyz.ru)
doesn’t this mean that simply no other process is using the CPU? from what I see, this is like the “Idle task” in Windows
補充:不知道是不是BUG現在2個線程都滿了。
以上就是“Linux kworker占用CPU過高怎么辦”這篇文章的所有內容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學習更多的知識,請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。