感谢您停下来!
所以我刚刚为我的RaspberryPi 3B v1.2购买了Pi desktop kit,其中包含一个带有mSATA磁盘插槽,实时时钟和电源控制的附加模块。我在mSATA SSD上安装了最新的raspbian stretch(内核版本4.9.59-v7 +),现在正在从中启动Raspbian,板载读卡器中没有SD卡。
一个kworker进程现在经常在8.0-13.5%的CPU使用率之间占用,我认为这似乎是非常不必要的,并且它有令人讨厌的后果,与Kodi的视频滞后。在添加模块之前,这从未发生过。
然后我通过运行perf
然后sudo perf record -D 1000 -g -a sleep 20
来尝试sudo perf report
(来自this thread的灵感),以找出可能负责的内核任务:
但我无法弄清楚如何继续减少工作量。这可能是由嵌入在附加板上的实时时钟造成的__timer_delay
,arch_timer_read_counter_long
和arch_counter_get_cntpct
似乎具有较高的CPU使用率?高负荷的其他任务是finish_task_switch
和_raw_spin_unlock_irqrestore
任务,但我无法猜测它是什么。
我是对的,这是CPU的不必要的工作负荷,如果是这样,我该如何减少它?
非常感谢提前!
答案 0 :(得分:1)
我遇到了同样的问题,发现根本原因是我没有将SD卡插入Raspberry Pi。如果缺少SD卡,内核会经常尝试扫描SD卡插槽,这会导致CPU使用率过高。
下载sdtweak.dtbo
并将/boot/overlays/
下现有的替换为新的,然后将dtoverlay=sdtweak,poll_once
添加到/boot/config.txt
并重新启动计算机。它对我有用。