diff options
| author | Alexander Clouter <alex-kernel@digriz.org.uk> | 2005-12-01 04:09:23 -0500 |
|---|---|---|
| committer | Dave Jones <davej@redhat.com> | 2005-12-01 04:23:23 -0500 |
| commit | 537208c8072280ab87916710d5a3f7ef11ab94ff (patch) | |
| tree | 109b9760f337e3c9fdf46166960292cccf370f5c /Documentation/cpu-freq | |
| parent | 001893cda2f280ab882164737a0b608208524809 (diff) | |
[PATCH] cpufreq: documentation for 'ondemand' and 'conservative'
Added a more verbose entry for the 'ondemend' governor and an entry for the
'conservative' governor to the documentation.
Signed-off-by: Alexander Clouter <alex-kernel@digriz.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Dave Jones <davej@redhat.com>
Diffstat (limited to 'Documentation/cpu-freq')
| -rw-r--r-- | Documentation/cpu-freq/governors.txt | 62 |
1 files changed, 59 insertions, 3 deletions
diff --git a/Documentation/cpu-freq/governors.txt b/Documentation/cpu-freq/governors.txt index 933fae74c337..f4b8dc4237e6 100644 --- a/Documentation/cpu-freq/governors.txt +++ b/Documentation/cpu-freq/governors.txt | |||
| @@ -27,6 +27,7 @@ Contents: | |||
| 27 | 2.2 Powersave | 27 | 2.2 Powersave |
| 28 | 2.3 Userspace | 28 | 2.3 Userspace |
| 29 | 2.4 Ondemand | 29 | 2.4 Ondemand |
| 30 | 2.5 Conservative | ||
| 30 | 31 | ||
| 31 | 3. The Governor Interface in the CPUfreq Core | 32 | 3. The Governor Interface in the CPUfreq Core |
| 32 | 33 | ||
| @@ -110,9 +111,64 @@ directory. | |||
| 110 | 111 | ||
| 111 | The CPUfreq govenor "ondemand" sets the CPU depending on the | 112 | The CPUfreq govenor "ondemand" sets the CPU depending on the |
| 112 | current usage. To do this the CPU must have the capability to | 113 | current usage. To do this the CPU must have the capability to |
| 113 | switch the frequency very fast. | 114 | switch the frequency very quickly. There are a number of sysfs file |
| 114 | 115 | accessible parameters: | |
| 115 | 116 | ||
| 117 | sampling_rate: measured in uS (10^-6 seconds), this is how often you | ||
| 118 | want the kernel to look at the CPU usage and to make decisions on | ||
| 119 | what to do about the frequency. Typically this is set to values of | ||
| 120 | around '10000' or more. | ||
| 121 | |||
| 122 | show_sampling_rate_(min|max): the minimum and maximum sampling rates | ||
| 123 | available that you may set 'sampling_rate' to. | ||
| 124 | |||
| 125 | up_threshold: defines what the average CPU usaged between the samplings | ||
| 126 | of 'sampling_rate' needs to be for the kernel to make a decision on | ||
| 127 | whether it should increase the frequency. For example when it is set | ||
| 128 | to its default value of '80' it means that between the checking | ||
| 129 | intervals the CPU needs to be on average more than 80% in use to then | ||
| 130 | decide that the CPU frequency needs to be increased. | ||
| 131 | |||
| 132 | sampling_down_factor: this parameter controls the rate that the CPU | ||
| 133 | makes a decision on when to decrease the frequency. When set to its | ||
| 134 | default value of '5' it means that at 1/5 the sampling_rate the kernel | ||
| 135 | makes a decision to lower the frequency. Five "lower rate" decisions | ||
| 136 | have to be made in a row before the CPU frequency is actually lower. | ||
| 137 | If set to '1' then the frequency decreases as quickly as it increases, | ||
| 138 | if set to '2' it decreases at half the rate of the increase. | ||
| 139 | |||
| 140 | ignore_nice_load: this parameter takes a value of '0' or '1', when set | ||
| 141 | to '0' (its default) then all processes are counted towards towards the | ||
| 142 | 'cpu utilisation' value. When set to '1' then processes that are | ||
| 143 | run with a 'nice' value will not count (and thus be ignored) in the | ||
| 144 | overal usage calculation. This is useful if you are running a CPU | ||
| 145 | intensive calculation on your laptop that you do not care how long it | ||
| 146 | takes to complete as you can 'nice' it and prevent it from taking part | ||
| 147 | in the deciding process of whether to increase your CPU frequency. | ||
| 148 | |||
| 149 | |||
| 150 | 2.5 Conservative | ||
| 151 | ---------------- | ||
| 152 | |||
| 153 | The CPUfreq governor "conservative", much like the "ondemand" | ||
| 154 | governor, sets the CPU depending on the current usage. It differs in | ||
| 155 | behaviour in that it gracefully increases and decreases the CPU speed | ||
| 156 | rather than jumping to max speed the moment there is any load on the | ||
| 157 | CPU. This behaviour more suitable in a battery powered environment. | ||
| 158 | The governor is tweaked in the same manner as the "ondemand" governor | ||
| 159 | through sysfs with the addition of: | ||
| 160 | |||
| 161 | freq_step: this describes what percentage steps the cpu freq should be | ||
| 162 | increased and decreased smoothly by. By default the cpu frequency will | ||
| 163 | increase in 5% chunks of your maximum cpu frequency. You can change this | ||
| 164 | value to anywhere between 0 and 100 where '0' will effectively lock your | ||
| 165 | CPU at a speed regardless of its load whilst '100' will, in theory, make | ||
| 166 | it behave identically to the "ondemand" governor. | ||
| 167 | |||
| 168 | down_threshold: same as the 'up_threshold' found for the "ondemand" | ||
| 169 | governor but for the opposite direction. For example when set to its | ||
| 170 | default value of '20' it means that if the CPU usage needs to be below | ||
| 171 | 20% between samples to have the frequency decreased. | ||
| 116 | 172 | ||
| 117 | 3. The Governor Interface in the CPUfreq Core | 173 | 3. The Governor Interface in the CPUfreq Core |
| 118 | ============================================= | 174 | ============================================= |
