LinuxでアプリケーションのCPU使用を制限する方法(CPUlimit)
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使用率を使用するのを防ぐために非常に有用なプログラムです:)