Cpulimit 1.2 ======= About ======= Cpulimit is a program that attempts to limit the cpu usage of a process (expressed in percentage, not in cpu time). It is useful to control batch jobs, when you don't want they eat too much cpu. The goal it to not let a proces run for more than a specified time ratio. It does not act on the nice value or other scheduling priority stuff, but on the real cpu usage. Also, it is able to adapt itself to the overall system load, dynamically and quickly. The control of the used cpu amount is done sending properly SIGSTOP and SIGCONT POSIX signals to processes. All the children processes and threads of the specified process will share the same percent of cpu. Developed by Angelo Marletta. Please send your feedback, bug reports, feature requests or just thanks :) to marlonx80@hotmail.com. ===================== Changelog since 1.1 ===================== - reorganization of the code, splitted in more source files - cpu count detection, i.e. if you have 4 cpu, it is possible to limit up to 400% - in order to avoid deadlocks, cpulimit now prevents to limit itself - option --path eliminated, use --exe instead both for absolute path and file name - call setpriority() just once - no more segmentation fault when processes exit - no more memory corruption when processes exit - cpulimit exits if --lazy option is specified and the process terminates - target process can be created on-fly given command line - light and scalable algorithm for subprocesses detection and limitation - mac os support - minor enhancements and bugfixes ============================ Get the latest source code ============================ You can checkout the latest code from sourceforge Subversion repository, running: svn checkout https://cpulimit.svn.sourceforge.net/svnroot/cpulimit cpulimit Of course this is the development version, so you may experience bugs (please signal them and your soul will be saved!) ============== Installation ============== Run 'make' and place the executable file 'cpulimit' wherever you want. Type 'cpulimit --help' to get documentation on available options.