aboutsummaryrefslogtreecommitdiffstats
path: root/README
blob: 6ffa82c17151eb1c128330b725ed23400af0393e (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
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). This is useful to control batch jobs, when you don't want they eat too much cpu. 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 continue and stop 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 to marlonx80 at hotmail dot com.

===========
Changelog:
===========

- reorganization of the code, splitted in more source files
- control function process_monitor() optimized by eliminating an unnecessary loop
- experimental support for multiple control of children processes and threads
  children detection algorithm seems heavy because of the amount of code,
  but it's designed to be scalable when there are a lot of children processes
- cpu count detection, i.e. if you have 4 cpu, it is possible to limit up to 400%
- in order to avoid deadlock, cpulimit prevents to limit itself
- option --path eliminated, use --exe instead both for absolute path and file name
- deleted every setpriority(), (todo: set it just once)
- 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!)


==============
Installation:
==============

Run 'make' and place the executable file 'cpulimit' wherever you want.
Type 'cpulimit --help' to get documentation on available options.

Un proyecto texto-plano.xyz