2 Cách hạn chế sử dụng CPU tiến hành trên Linux

Hưng còi 89

New member
Trong khi quản trị hệ thống Linux của mình, bạn cần giới hạn việc sử dụng CPU của một tiến trình thực thi vì nó có thể tiêu tốn nhiều CPU hơn và ảnh hưởng đến hiệu suất của toàn hệ thống. Hướng dẫn này, tôi sẽ chỉ cho bạn cách bạn có thể kiểm soát thời gian CPU của một tiến trình trên Centos 7 và Ubuntu 16.

1) cpulimit​

cpulimit là một công cụ dòng lệnh tuyệt vời được viết bằng ngôn ngữ lập trình C để hạn chế việc sử dụng CPU của một tiến trình. Nó không hiển thị theo mặc định nên chúng ta cần cài đặt nó.
Để cài đặt cpulimit trên Ubuntu 16.04, hãy làm như bên dưới
# apt-get install cpulimit
Cài đặt trên centos 7
# yum install epel-release
# yum install cpulimit
Hãy giới hạn mức sử dụng CPU bằng cách sử dụng tùy chọn --limit hoặc -l để đặt tỷ lệ phần trăm sử dụng cho một quy trình. Trước khi giới hạn mức sử dụng CPU, bạn cần tìm tiến trình hoặc lệnh đang sử dụng toàn bộ thời gian CPU của bạn. Có 3 cách để sử dụng cpulimit, bằng cách hành động
  • trên chương trình thực thi với --executable hoặc -eoption
cpulimit -e program -l %cpu
  • trên tên đường dẫn tuyệt đối của tệp với --path hoặc -Poption
cpulimit -P path -l %cpu
  • trên PID của quá trình với - pid hoặc -poption
cpulimit -p process_pid -l %cpu
Nhự vậy, trước tiên chúng ta sẽ kiểm tra quá trình / chương trình tiêu tốn thời gian của CPU.
1644578026512.png
Sau đó, bạn có thể sử dụng lệnh sau với tên của chương trình.
# cpulimit -e vmware-vmx -l 40
Process 3185 detected
Bạn có thể thấy công cụ đã tự động phát hiện id quy trình của chương trình. Bạn có thể giới hạn việc sử dụng cpu với id quy trình như bên dưới
# cpulimit -p 3185 -l 40
Process 3185 detected
Và hãy xem kết quả bên dưới
1644578138563.png
Bạn có thể chạy cpulimit trong nền bằng cách sử dụng - background hoặc -boption

2) cputool​

Bạn có thể sử dụng cputool cũng sử dụng cpulimit để giảm mức sử dụng CPU. Điều này cũng có thể được thực hiện bằng cách sử dụng giới hạn tải. cputool không có sẵn theo mặc định nên bạn cần cài đặt nó trên Ubuntu 16.
# apt install cputool
Để sử dụng cputool, bạn cần tuân thủ cú pháp bên dưới
cputool --cpu-limit %cpu -p process_pid
Với cùng một ví dụ, bạn có thể sử dụng cputool như bên dưới
# cputool --cpu-limit 30 -p 3185
Lệnh sẽ kiểm soát thiết bị đầu cuối của bạn để bạn có thể sử dụng nó ở chế độ nền như bên dưới:
# cputool --cpu-limit 30 -p 3185 &
[1] 16808
Bạn có thể xem kết quả như dưới
1644578367528.png
Với những công cụ trên này, bạn có thể dễ dàng kiểm soát việc sử dụng CPU của một tiến trình khi nó đang chạy. Bạn không cần phải hủy các quy trình để giảm mức sử dụng nhưng bạn có thể chỉ định một tỷ lệ phần trăm để không vượt quá.
Cám ơn bạn đã theo dõi
 

Thống kê diễn đàn

Chủ đề
269
Bài viết
763
Thành viên
740
Thành viên mới nhất
Tamcoin
Bên trên