Nainstaloval jsem Ubuntu 13.10 na MacBook Pro 10,1. Po instalaci však proces kworker spotřebovává přes 90 % využití CPU. Zkusil jsem následující:
- (Navrženo v této odpovědi) Spusťte
grep . -r /sys/firmware/acpi/interrupts/abyste zjistili, zda nějaké GPE mají vysoké hodnoty. - (Navrženo v této odpovědi) Pod
sudo -s, spusťteecho l > /proc/sysrq-triggera přečtěte si výstup vdmesg. - (Navrženo v této odpovědi) Proveďte
sudo perf record -g -a sleep 10a přečtěte si výstup vperf report.
Za 1, gpe16 měl vysokou hodnotu a stále stoupal. Pokusil jsem se zakázat gpe16, jak je navrženo v odpovědi, a využití procesoru kworker kleslo na 0,0 %.
Za 2 (bez deaktivace gpe16 ), dmesg neukázal žádné další informace než ty, které byly přítomny při spouštění.
Za 3 (bez deaktivace gpe16 ), hlásil následující červeně:
- 50.76% kworker/0:5 [kernel.kallsyms] [k] native_read_tsc
- native_read_tsc
- 64.72% delay_tsc
__const_udelay
+ gmux_index_wait_ready.isra.6
- 35.28% __const_udelay
+ gmux_index_wait_ready.isra.6
- 35.14% kworker/0:5 [kernel.kallsyms] [k] delay_tsc
- delay_tsc
- __const_udelay
- gmux_index_wait_ready.isra.6
- 59.84% gmux_index_write8
gmux_notify_handler
acpi_ev_notify_dispatch
acpi_os_execute_deferred
process_one_work
worker_thread
kthread
ret_from_fork
- 40.16% gmux_index_read8
gmux_notify_handler
acpi_ev_notify_dispatch
acpi_os_execute_deferred
process_one_work
worker_thread
kthread
ret_from_fork
Otázky:
- Co je
gpe16? Jak mám vědět, že deaktivace tohoto přerušení kvůli kworkerovi nebude mít další důsledky? - Jaké informace lze získat z
perf report? Je možné něco udělat s časovým razítkem na MacBooku Pro?
Přijatá odpověď:
Když mám směšně vysoké využití CPU, vždy to vypadá, že jde o proces související s Pythonem. Prostě to zabiju uvnitř (Gnome) System Monitor, kdykoli mě napadne.