kworker потребляет 85% CPU 1 большую часть времени!

Я запускаю Ubuntu 18.04, ядро 5.4.81, и kworker/0:1+kac использует 85% CPU 1 большую часть времени.

Вот некоторая полезная информация:

  • top output:

    top cmd

  • System Monitor CPU load:

    CPU load pic

  • perf report:

    Samples: 56K событийных "циклов", количество событий (приблизительно): 29364654484
     Дети Самостоятельная команда Общий символ объекта
    + 80.07% 0.00% kworker/0:1-kac [kernel.kallsyms] [k] ret_from_fork
    + 80.07% 0.00% kworker/0:1-kac [kernel.kallsyms] [k] kthread
    + 80.07% 0.00% kworker/0:1-kac [kernel.kallsyms] [k] worker_thread
    + 79.96% 0.03% kworker/0:1-kac [kernel.kallsyms] [k] process_one_work
    + 79.93% 0.00% kworker/0:1-kac [kernel.kallsyms] [k] acpi_os_execute_deferred
    + 78.59% 0.01% kworker/0:1-kac [kernel.kallsyms] [k] acpi_ev_asynch_execute_gpe_m
    + 78.54% 0.01% kworker/0:1-kac [kernel.kallsyms] [k] acpi_ns_evaluate
    + 78.25% 0.01% kworker/0:1-kac [kernel.kallsyms] [k] acpi_ps_execute_method
    + 78.10% 0.03% kworker/0:1-kac [kernel.kallsyms] [k] acpi_ps_parse_aml
    + 75.07% 0.71% kworker/0:1-kac [kernel.kallsyms] [k] acpi_ps_parse_loop
    + 49.25% 0.52% kworker/0:1-kac [kernel.kallsyms] [k] acpi_ds_exec_end_op
    + 27.27% 0.25% kworker/0:1-kac [kernel.kallsyms] [k] acpi_ns_lookup
    + 26.93% 0.19% kworker/0:1-kac [kernel.kallsyms] [k] acpi_ns_search_and_enter
    + 26.48% 26.16% kworker/0:1-kac [kernel.kallsyms] [k] acpi_ns_search_one_scope
    + 26.00% 0.05% kworker/0:1-kac [kernel.kallsyms] [k] acpi_ds_evaluate_name_path
    + 19.60% 3.27% kworker/0:1-kac [kernel.kallsyms] [k] acpi_ut_update_object_refere
    + 17.80% 0.00% swapper [kernel.kallsyms] [k] secondary_startup_64
    + 17.80% 0.00% swapper [kernel.kallsyms] [k] cpu_startup_entry
    + 17.78% 0.03% своппер [kernel.kallsyms] [k] do_idle
    + 17.29% 0.01% своппер [kernel.kallsyms] [k] call_cpuidle
    + 17.28% 0.00% своппер [kernel.kallsyms] [k] cpuidle_enter
    
2
задан 25 August 2021 в 15:05

1 ответ

Я был помог укротить такие kworker неуправляемые процессы, отключив прерывание, вдохновленный этой веткой и старый ответ Мауро Маскиа ответил, похоронен на этом сайте, потому что, к сожалению, был помечен как «Повторяющийся» к другому вопросу, который не дал решения. Поэтому пользователям будет нелегко найти его.

Отчет об ошибке Ubuntu по этой проблеме (не решенной): 887793 . Он также содержит предложение по решению проблемы:

echo N > /sys/module/drm_kms_helper/parameters/poll

Я использовал подход, описанный здесь . Это несколько сложно, потому что включает в себя обнаружение прерываний, вызывающих проблему. У меня есть единственная строка в форме

echo "disable" > /sys/firmware/acpi/interrupts/#####

(где ##### обозначает номер прерывания, который будет разным для разных компьютеров) в crontab root.

Я не тестировал первый подход, и я не знаю, какой из обоих подходов влияет на производительность системы меньше всего (если вообще заметно - и во многих случаях намного предпочтительнее, чем беглый процесс kworker).

1
ответ дан 4 September 2021 в 09:28

Другие вопросы по тегам:

Похожие вопросы: