Kworker là gì? Làm thế nào để giảm mức sử dụng CPU?

Tác giả sysadmin, T.M.Một 11, 2022, 05:34:07 CHIỀU

« Chủ đề trước - Chủ đề tiếp »

0 Thành viên và 2 Khách đang xem chủ đề.

Kworker là gì? Làm thế nào để giảm mức sử dụng CPU?


Linux là một trong những hệ điều hành linh hoạt nhất mà bạn có thể chạy. Nó sẽ chạy trên bất kỳ thiết bị nào từ các máy tính có kích thước bằng thẻ tín dụng như Raspberry Pi đến các máy chủ được đầu tư kỹ lưỡng. Tuy nhiên, nó có những lỗi, trục trặc và thiếu sót của riêng nó mà thỉnh thoảng xuất hiện.


Trong bài viết này, chúng ta sẽ xem xét Kworker, nó làm gì, tại sao nó lại quan trọng và cách bạn có thể giảm mức sử dụng CPU của tiến trình.

1. Kworker là gì?

Kworker là một công cụ Linux chịu trách nhiệm cho tất cả các hoạt động được thực hiện bởi Kernel. Trong các hoạt động hàng ngày, Kernel đảm nhiệm các tác vụ sau:

  • Các tác vụ liên quan đến bộ hẹn giờ
  • Nhận và gửi đầu vào và đầu ra
  • Xử lí dữ liệu
  • Xử lý gián đoạn
  • Thực hiện các phép tính hệ thống

Kworker cũng có thể tự nhân bản để hoạt động trên nhiều lõi cùng một lúc. Trong những trường hợp như vậy, bạn có thể thấy nhiều phiên bản Kworker với một số kèm theo chúng, chẳng hạn như kworker0, kworker1,  v.v.


Về cơ bản, nó là một trình giữ chỗ cho các luồng nhân viên nhân để bạn có thể theo dõi hoạt động nhân của mình trên hệ thống. Nó không phải là thứ có thể được gỡ bỏ khỏi hệ thống một cách an toàn, hoặc xóa bỏ tất cả vì vấn đề đó. Bạn có thể theo dõi việc sử dụng nó bằng cách sử dụng lệnh sau.

Mã nguồn [Chọn]
sudo top
Hoặc

Mã nguồn [Chọn]
sudo ps aux | grep worker
2. Làm thế nào để giảm mức sử dụng CPU của Kworker?

Nói chung, mức sử dụng Kworker không được chiếm hơn 10% mức sử dụng CPU trong điều kiện hoạt động bình thường. Điều đó nói rằng, nếu bạn đang gặp phải tình trạng sử dụng CPU cao từ Kworker, bạn có thể thử 5 bản sửa lỗi sau.

2.1. Cập nhật Kernel của bạn

Điều đầu tiên bạn nên làm trong những trường hợp như vậy là cập nhật Kernel lên phiên bản mới nhất có thể. Điều này có thể được thực hiện bằng cách chạy lần lượt các lệnh sau.

Mã nguồn [Chọn]
sudo apt-get update
Mã nguồn [Chọn]
sudo apt-get dist-upgrade

2.2. Hủy kích hoạt cấu hình cờ internet

Một lý do có thể khác khiến việc sử dụng CPU tăng đột biến là do bất kỳ dịch vụ nào sử dụng Internet trên PC của bạn. Điều này có thể được ngăn chặn bằng cách tắt cấu hình internet trên PC của bạn. Tuy nhiên, hãy nhớ rằng điều này có thể hạn chế một số (hoặc tất cả) tiến trình trên hệ thống của bạn truy cập internet.

Mã nguồn [Chọn]
ifconfig eth0 down
Nếu bạn đang sử dụng WiFi, hãy đổi eth0 thành tên của giao diện WiFi của bạn. Ví dụ,

Mã nguồn [Chọn]
ifconfig wlan0 down
Để bật lại Internet, chỉ cần sử dụng lệnh này

Mã nguồn [Chọn]
ifconfig eth0 up
2.3. Sử dụng bộ giới hạn tiến trình

Bạn có thể thử và sử dụng bộ giới hạn tiến trình để hạn chế tần suất tiến trình Kworker tăng đột biến mức sử dụng CPU của nó. Bây giờ, mặc dù điều này sẽ làm giảm mức sử dụng CPU của bạn, nhưng nó có thể gây chậm hệ thống vì Kworker sẽ bị điều chỉnh so với các tiến trình khác.


Bạn có thể tải xuống gói phc-intel từ liên kết này và cài đặt nó trên hệ thống của bạn   Đăng nhập để xem liên kết

2.4. Tắt ngắt firmware

Việc vô hiệu hóa các ngắt firmware có nghĩa là Kworker có ít công việc hơn để xử lý, cuối cùng dẫn đến việc sử dụng CPU thấp hơn. Để làm như vậy, hãy mở một thiết bị đầu cuối và nhập lệnh sau.

Mã nguồn [Chọn]
echo "disable" > /sys/firmware/acpi/interrupts/gpeXX
Ngoài ra, bạn cũng có thể sử dụng lệnh này.

Mã nguồn [Chọn]
grep enabled /sys/firmware/acpi/interrupts/*
2.5. Sử dụng cửa sổ Shell

Cuối cùng nhưng không kém phần quan trọng, bạn cũng có thể triển khai lệnh shell để điều chỉnh Kworker. Mở thiết bị đầu cuối với tư cách là người dùng root và nhập lệnh sau.

Mã nguồn [Chọn]
#echo "options drm_kms_helper poll=N">/etc/modprobe.d/local.conf
Ngoài ra, bạn cũng có thể sử dụng lệnh này.

Mã nguồn [Chọn]
#echo N> /sys/module/drm_kms_helper/parameters/poll