CPULimit

は、Linuxの特定のアプリケーションのCPU使用を制限する簡単なプログラムです。これはデフォルトでUbuntuリポジトリにあります。 Ubuntuで次のコマンドを発行してインストールすることができます

sudo apt-get install cpulimit

出力

mkyong@mkyong:~$ sudo apt-get install cpulimit[sudo]password for mkyong:
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
  linux-headers-2.6.28-11 linux-headers-2.6.28-11-generic
Use 'apt-get autoremove' to remove them.
The following NEW packages will be installed:
  cpulimit
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 9730B of archives.
After this operation, 65.5kB of additional disk space will be used.
Get:1 http://my.archive.ubuntu.com jaunty/universe cpulimit 1.1-11[9730B]Fetched 9730B in 1s (8940B/s)
Selecting previously deselected package cpulimit.
(Reading database ... 131942 files and directories currently installed.)
Unpacking cpulimit (from .../cpulimit__1.1-11__i386.deb) ...
Processing triggers for man-db ...
Setting up cpulimit (1.1-11) ...
mkyong@mkyong:~$

アプリケーションのCPU使用量は、実行可能名またはプロセスID(pid)のいずれかで制限できます。例えば、私たちはPythonで書かれたcronジョブを持っています(name = mycronjob.py、pid = 1234)

実行可能ファイル名でプロセス ‘mycronjob.py’を50%のCPU使用率に制限する

cpulimit -e mycronjob.py -l 50

PID(1234)によるプロセスを50%のCPUに制限する:

cpulimit -p 1234 -l 50

これは特定のアプリケーションがすべてのCPU使用率を使用するのを防ぐために非常に有用なプログラムです:)