Написах си един конвертор които трябваше да извърши конкретни операции. Конвертора товареше машината зверски на 99% :)(Все пак обработва доста голям обем от информация) и трябваше да намаля процесорното натоварване което правеше. За целта използвах cpulimit. След като го инсталирах apt-get install cpulimit :) мога да си избера как да огранича конвертора по PID,име на приложение или директно да го изпълня през cpulimit . Аз си избрах по PID понеже така и така беше пуснат конвертора.
cpulimit -p 28563 -l 30
По този начин процесорното натоварване за PID 28563 ще бъде 30%.
Благодарение на cpulimit всичко е наред. Конвертора си работи както и другите приложения(е конвертора работи по- бавно, но в този случай бързината не е проблем). И всички приложения заживели щастливо. Няколко часа яли пили и се веселили докато конвертора си свърши работата.
Примери:
Ограничава по името на процеса на 40% CPU
cpulimit --exe bigloop --limit 40
cpulimit --exe /usr/local/bin/bigloop --limit 40
Ограничава по PID на 55% CPU
cpulimit --pid 2960 --limit 55
Ограничава със стартиране на процеса на 40% CPU
cpulimit --limit 40 /etc/rc.d/rc.boinc start