To use cpulimit, first download it then extract the archive, use the terminal to navigate to it's folder and:
make
cp cpulimit /usr/local/sbin/
rm -rf cpulimit*
Ubuntu users: all you have to do is open a terminal and type this:sudo apt-get install cpulimit
cpulimit examples:
Limit the process 'bigloop' by executable name to 40% CPU:cpulimit -e bigloop -l 40
cpulimit -e /usr/local/bin/bigloop -l 40
So for Firefox, you would have to:cpulimit -e firefox -l 40
Limit a process by PID to 55% CPU:cpulimit -p 2960 -l 55
Launch a process by command line and limit it to 40% (in development version only!):cpulimit -l 40 /etc/rc.d/rc.boinc start
To find out the pid of an application, simply type this in a terminal:
-for all applications running:
ps -e
-for a specific application (for example Firefox):pidof firefox
(you may also want to check out our list of 20 great Linux terminal commands)If your machine has one processor you can limit the percentage from 0% to 100%, which means that if you set for example 50%, your process cannot use more than 500 ms of cpu time for each second. But if your machine has four processors, percentage may vary from 0% to 400%, so setting the limit to 200% means to use no more than half of the available power. In any case, the percentage is the same of what you see when you run top.
cpulimit should run at least with the same user running the controlled process. But it is much better if you run cpulimit as root, in order to have a higher priority and a more precise control.
Now cpulimit does limit also the children of the specified process. The code is still experimental, so let me know how it is.
[via ciberciti]