Почему использование процессора kworker становится таким высоким?
Я недавно установил Ubuntu 12.04 на свой ноутбук Samsung вместе с Windows 7. Всякий раз, когда я использую Ubuntu (даже в режиме ожидания), kworker использует почти 90% одного из 8-ядерных процессоров. Несмотря на то, что это не влияет на мое использование, оно меня беспокоит, и я боюсь, что это может повредить мой процессор. Я даже попытался установить другой дистрибутив Linux (Linux Mint), и kworker вызвал такую же проблему. Так что я не знаю, что делать. Буду очень признателен за вашу помощь.
3 ответа
Вместо этого я думаю, что это использование процессора не является нормальным и связано с известной ошибкой kworker: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/887793
Решением для меня и для многих других было, во-первых, выяснить "gpe", вызывающее плохие вещи, с чем-то вроде:
grep . -r /sys/firmware/acpi/interrupts/
и проверьте высокое значение (у меня было gpe13 - со значением, например, 200K - поэтому вы должны изменить его соответственно, если отличается). После этого:
~ cp /sys/firmware/acpi/interrupts/gpe13 /pathtobackup
~ crontab -e
Добавьте эту строку, чтобы она выполнялась при каждом запуске / перезагрузке:
@reboot echo "disable" > /sys/firmware/acpi/interrupts/gpe13
Сохранить / выход. Затем, чтобы заставить его работать и после пробуждения из режима ожидания:
~ 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
Добавьте этот материал:
#!/bin/bash
case "$1" in
thaw|resume)
echo disable > /sys/firmware/acpi/interrupts/gpe13 2>/dev/null
;;
*)
;;
esac
exit $?
Сохранить / выйти, готово.
Протестировано и работает над:
Ubuntu 12.10 on Samsung Chronos 7 series - Model no. NP700Z7C --
Ubuntu 16.04.2 on Clevo - Model no. P650RS --
Загрузка ЦП кажется нормальной, есть только 1 ЦП (ЦП1), который имеет высокую загрузку. Всего существует 3 процесса, которые находятся в рабочем состоянии, два из них - kworker и gnome-system-mo (первые два процесса в верхнем командном экране, которые вы добавили, короткие).
"kworker" - это процесс-заполнитель для рабочих потоков ядра, которые выполняют большую часть фактической обработки для ядра, особенно в тех случаях, когда имеются прерывания, таймеры, операции ввода-вывода и т. д. Они обычно соответствуют подавляющему большинству выделенных ресурсов ". Система "Время запуска процессов. Это не то, что может быть безопасно удалено из системы каким-либо образом, и совершенно не связано с nepomuk или KDE (за исключением того, что эти программы могут делать системные вызовы, что может потребовать от ядра что-то сделать)
Для получения дополнительной информации о kworker, пожалуйста, перейдите по следующей ссылке:- Что такое KWorker и его важность
Вчера я установил Linux Mint 17 и заметил сегодня вечером, что kworker потребляет 100% одного из четырех процессоров. Я запустил вышеупомянутую проверку, но не нашел ничего, кроме 0 для прерываний.
При проверке служб, которые у меня обычно работают, я заметил, что остановка сервера nfs отбросила поток kworker обратно в zilch. Перезапуск сервера NFS не устранил проблему.
Я нашел этот отчет об ошибке ( https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1322407), в котором указано, что аналогичная проблема с сервером nfs была исправлена в ядре 3.13.0-32.57. Последнее обновление на Mint 17, похоже, работает под управлением ядра 3.13.0-24, поэтому у меня нет исправления в ядре, на котором я работаю. Я не знаю, поможет ли это кому-нибудь еще, но я систематически заходил на каждый клиентский компьютер nfs и выполнял команду 'umount -a -t nfs' и ждал, чтобы это имело эффект. Я нашел клиента, который, казалось, вызывал проблему, поскольку kworker упал до нуля после того, как я отключился. Я перемонтировал общие ресурсы nfs на клиенте 'mount -a -t nfs', и проблема не вернулась.