CPUTool - Batasi dan Kontrol Pemanfaatan CPU dari Segala Proses di Linux


Salah satu area penting dalam pemantauan kinerja Linux adalah penggunaan CPU dan beban sistem. Ada beberapa alat pemantauan kinerja Linux untuk mengawasi bagaimana segala sesuatunya terjadi pada suatu sistem.

Sejumlah alat ini hanya menampilkan status/statistik sistem sementara beberapa alat lainnya memberi Anda sarana untuk mengelola kinerja sistem. Salah satu alat tersebut disebut CPUTool.

CPUTool adalah alat baris perintah yang sederhana namun kuat untuk membatasi dan mengontrol penggunaan CPU dari setiap proses hingga batas tertentu dan memungkinkan interupsi eksekusi proses jika beban sistem melampaui ambang batas yang ditentukan.

Bagaimana Cara Kerja CPUTool?

Untuk membatasi penggunaan CPU, cputool mengirimkan sinyal SIGSTOP dan SIGCONT ke proses dan ini ditentukan oleh beban sistem. Ia bergantung pada sistem file semu /proc untuk membaca PID dan ukuran penggunaan CPU-nya.

Ini dapat digunakan untuk membatasi penggunaan CPU atau beban sistem yang dipengaruhi oleh satu proses atau sekelompok proses hingga batas tertentu dan/atau menangguhkan proses jika beban sistem melampaui ambang batas.

Bacaan yang Disarankan: Memahami Rata-Rata Beban Linux dan Memantau Kinerja Linux

Instal CPUTool untuk Membatasi Penggunaan CPU dan Rata-Rata Beban

CPUTool hanya tersedia untuk diinstal pada Debian/Ubuntu dan turunannya dari repositori sistem default menggunakan alat manajemen paket.

sudo apt install cputool

Membatasi Proses Penggunaan CPU Dengan CUPTool

Sekarang mari kita lihat cara kerja cputool sebenarnya. Untuk mendemonstrasikan semuanya, kita akan menjalankan perintah dd yang akan menghasilkan persentase CPU yang tinggi, di latar belakang dan menampilkan PID-nya.

dd if=/dev/zero of=/dev/null &

Untuk memantau penggunaan CPU, kita dapat menggunakan alat atas atau sekilas yang memungkinkan kita melihat keadaan proses sistem Linux yang sedang berjalan dan diperbarui secara real-time:

top

Dari output di atas, kita dapat melihat bahwa perintah dd memiliki persentase waktu CPU tertinggi 99.7%) Sekarang kita dapat membatasinya menggunakan cputool seperti yang ditunjukkan di bawah ini.

Flag --cpu-limit atau -c digunakan untuk menetapkan persentase penggunaan suatu proses atau sekelompok proses dan -p untuk menentukan sebuah PID. Perintah berikut akan membatasi perintah dd (PID 8275) hingga 50% penggunaan satu inti CPU:

cputool --cpu-limit 50 -p 8275 

Setelah menjalankan cputool, kita dapat memeriksa penggunaan CPU baru untuk proses tersebut (PID 8275) sekali lagi. Sekarang penggunaan CPU untuk proses dd harus berkisar antara (49.0%-52.0%).

top

Untuk lebih membatasi penggunaan CPU dd hingga 20%, kita dapat menjalankan cputool untuk kedua kalinya:

cputool --cpu-limit 20 -p 8275 

Kemudian segera periksa menggunakan alat seperti top atau sekilas seperti ini (penggunaan CPU untuk dd sekarang seharusnya berkisar antara 19.0%-22.0% atau sedikit lebih dari ini):

top

Perhatikan bahwa shell tidak mengharapkan masukan pengguna apa pun saat cputool berjalan; oleh karena itu menjadi tidak responsif. Untuk mematikannya (ini akan menghentikan operasi pembatasan penggunaan CPU), tekan Ctrl + C.

Yang penting, untuk menentukan grup proses (satu program dengan beberapa instance yang berjalan, masing-masing dengan PID berbeda) misalnya server web HTTP:

pidof apache2
9592 3643 3642 3641 3640 3638 3637 1780

Gunakan tanda -P seperti ini:

cputool --cpu-limit 20 -P 1780

Membatasi Beban Sistem dengan CUPTool

Opsi -l digunakan untuk menentukan beban maksimum yang mungkin dilakukan sistem agar proses atau grup proses dapat terus berjalan. Kita mungkin menggunakan nilai pecahan (misalnya 2,5).

Contoh di bawah ini berarti menjalankan rsync untuk cadangan lokal hanya ketika beban sistem tidak melebihi 3,5:

cputool --load-limit 3.5 --rsync -av /home/tecmint /backup/`date +%Y-%m-%d`/

Untuk informasi lebih lanjut dan penggunaan, lihat halaman manual CPUTool:

man cputool

Periksa panduan berguna berikut untuk menemukan info CPU dan pemantauan kinerja CPU:

  1. 9 Perintah Berguna untuk Mendapatkan Informasi CPU di Linux
  2. Cpustat – Memantau Pemanfaatan CPU dengan Menjalankan Proses di Linux
  3. CoreFreq – Alat Pemantauan CPU yang Kuat untuk Sistem Linux
  4. Temukan Proses yang Berjalan Teratas berdasarkan Memori Tertinggi dan Penggunaan CPU di Linux

Kesimpulannya, CPUTool sangat berguna untuk manajemen kinerja Linux. Bagikan pendapat Anda tentang artikel ini melalui formulir umpan balik di bawah.