Instead I think this CPU usage is not normal and is related to the well-known kworker bug:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/887793
The solution for me and for many others was, first of all, find out the "gpe" that is causing the bad stuff with something like:
grep . -r /sys/firmware/acpi/interrupts/
and check for an high value (mine was gpe13 - with a value like 200K - so, you have to change it accordingly, if differs). After that:
~ cp /sys/firmware/acpi/interrupts/gpe13 /pathtobackup
~ crontab -e
Add this line, so it will be executed every startup/reboot:
@reboot echo "disable" > /sys/firmware/acpi/interrupts/gpe13
Save/exit. Then, to make it work also after wakeup from suspend:
~ touch /etc/pm/sleep.d/30_disable_gpe13
~ chmod +x /etc/pm/sleep.d/30_disable_gpe13
~ vim /etc/pm/sleep.d/30_disable_gpe13
Add this stuff:
#!/bin/bash
case "$1" in
thaw|resume)
echo disable > /sys/firmware/acpi/interrupts/gpe13 2>/dev/null
;;
*)
;;
esac
exit $?
Save/exit, done.
Tested and working on :
Ubuntu 12.10 on Samsung Chronos 7 series - Model no. NP700Z7C --
Ubuntu 16.04.2 on Clevo - Model no. P650RS --
gpe06:94815545andgpe17:10621, and after disabling thegpe06, kworker no longer appears at the top of the CPU ussage list, and then I could event see the power indicator increasing the remaining time left on battery power. – Armando Pérez Marqués Mar 07 '15 at 23:28My non-zero interrupt file was /sys/firmware/acpi/interrupts/gpe13 .
This solution worked for my system. Thank you!
– Yoh Dec 30 '15 at 16:42htop(freshly installed). If I usedtopI would see thatkworkereats my CPU. Problem withhtopis that it doesn't showkworkerin currently running tasks! – Marecky May 15 '17 at 22:26echo "disable" > /sys/firmware/acpi/interrupts/gpe13, run separately, doesn't make the kworker stop (check in another terminal with commandtopif the kworker stops) , then you probably need to run it with sudo privileges. If that works with the individual command then usesudo crontab -efor the rest of the instructions, or else it doesn't work. (It didn't for me at least). – jonahe Aug 24 '17 at 12:53nomodesetand used the command line to download the proprietary nvidia driver. After reboot, issue resolved. – Samleo Apr 23 '19 at 15:20