20230708 07h47m27s grim

Mengatasi Proses yang Memakan Banyak CPU Setelah Suspend.

Beberapa waktu yang lalu pasca berhasil menambah dukungan suspend pada kernel (cek episode KKK ini), akhirnya saya bisa menggunakan fitur suspend. Namun, saya menemukan masalah ketika membangunkan / mengaktifkan laptop dari suspend, ada proses (“kworker/0:1-kacpi_notify”) yang memakan 90% dari salah satu CPU yang saya miliki. Beruntungnya, setelah menjelajah ke beberapa forum, akhirnya saya menemukan solusinya.

20230708 07h47m27s grim

Setelah bangun dari suspend, salah satu CPU naik 100%.

Mengapa hal itu bisa terjadi ?

Jujur, saya kurang mengetahui kenapa proses “kworker/0:1-kacpi_notify” bisa menggila setelah laptop bangun dari suspend. Satu hal yang mungkin menjadi penyebabnya adalah konfigurasi kernel. Saya tidak mengalami kendala ketika menggunakan kernel bawaan distro dan hanya terjadi pada kernel yang saya konfigurasi sendiri. Mungkin akan saya kulik-kulik lagi dan bisa menjadi bahan untuk segmen KKK episode selanjutnya.

Cara mengatasi.

Persiapan.

Beberapa hal yang bisa dipersiapkan, di antaranya :

  • Tool grep.
  • Tool echo.

Langkah-langkah.

Berikut ini adalah langkah-langkah yang bisa kita jalankan.

1. Mencari interrupt yang memiliki hitungan / count yang tertinggi.

Kita bisa menuju ke direktori /sys/firmware/acpi/interrupts lalu menyortir interrupt yang memiliki hitungan / count yang tertinggi.

Kita bisa menggunakan perintah berikut.

$ grep . -r /sys/firmware/acpi/interrupts | grep -v "  0"Code language: Shell Session (shell)

Pada mesin saya ada 2 interrupt yaitu

  1. /sys/firmware/acpi/interrupts/gpe01.
  2. /sys/firmware/acpi/interrupts/sci.
2. Men-disable interrupt yang memiliki hitungan yang tertinggi.

Setelah sebelumnya kita menemukan beberapa interrupt yang memiliki hitungan yang tertinggi, kita bisa langsung men-disable-nya.

Kita bisa menggunakan perintah berikut.

$ su -c "echo disable > /sys/firmware/acpi/interrupts/gpe01"
$ su -c "echo disable > /sys/firmware/acpi/interrupts/sc1"Code language: Shell Session (shell)
3. Cek penggunaan CPU.

Setelah interrupt kita disable, semestinya penggunaan CPU akan kembali normal.

Kita bisa mengeceknya lewat tool top atau htop.

$ htop
$ top
20230708 07h59m38s grim

Penggunaan CPU kembali normal setelah interrupt di-disable.

Ringkasan.

Berikut ini adalah ringkasan bahasan kita kali ini.

  1. Ada kendala ketika perangkat bangun dari proses suspend.
  2. Kendala berupa penggunaan CPU yang besar oleh proses “kworker/0:1-kacpi_notify”.
  3. Kita bisa mengembalikan penggunaan CPU seperti semula dengan men-disable beberapa interrupt yang terkait.

Referensi dan kredit.

Berikut ini adalah referensi dan kredit untuk bahasan kita kali ini.

  1. Post forum Reddit, terkait kacpi_notify yang mengambil 60% CPU.

  2. Post forum Linux Mint, terkai kacpid/kacpi_notify yang memakan 60-70% CPU.

  3. Post forum Stack Exchange.

Penutup.

Demikian tadi, cara mengatasi proses kworker/kacpi_notify yang memakan banyak CPU setelah bangun dari suspend. Semoga bisa menjadi penyelesaian dari masalah yang kita hadapi, terkait CPU salah satunya. Ke depannya akan kita kulik konfigurasi kernel yang bisa mengatasi persoalan ini secara default. Terima kasih dan sampai jumpa pada bahasan selanjutnya.

Artikel Terkait

Leave a Reply

Your email address will not be published. Required fields are marked *

%d bloggers like this: