diff options
Diffstat (limited to 'system/powernowd/README')
-rw-r--r-- | system/powernowd/README | 62 |
1 files changed, 8 insertions, 54 deletions
diff --git a/system/powernowd/README b/system/powernowd/README index 2db8eef6bc..a918803294 100644 --- a/system/powernowd/README +++ b/system/powernowd/README @@ -1,57 +1,11 @@ -Overview: This is a very simple program that will adjust the speed of your CPU -depending on system load. It works as a client of the CPUFreq driver. -It is designed for use with CPU's supporting AMD's PowerNow power management -scheme, as it's algorithm works better if there are more then two CPU -speeds available. (aka, ARM, AMD K6/K7, Via C3, and Crusoe as opposed to -traditional Intel and Ultrasparc). +depending on system load. -This program is essentially a simple client to the CPUFreq sysfs interface. -This means that you -need- to be running Linux v2.5 or later that includes -the sysfs interface. This daemon will -not- work with the CPUFreq driver -interface included in Linux v2.4. Feel free to write your own daemon -to support that if you like; you can even use this as a starting point. -If there's enough clamoring for it, then maybe I'll whip up something. -You also need a CPU that supports frequency scaling and supports the CPUFreq -interface. This code has been tested on various AMD and PPC processors +It is designed for use with CPU's supporting AMD's PowerNow power +management scheme, as it's algorithm works better if there are more then +two CPU speeds available. (aka, ARM, AMD K6/K7, Via C3, and Crusoe as +opposed to traditional Intel and Ultrasparc). -I have been running this daemon on my AMD laptop for over 2 years with no -problems to report, and it's nice that my laptop remains cool unless I'm -really doing something intensive, like watching DivX movies, without me -having to manually intervene and set the speed. I just recently bought an -Apple iBook G3, and powernowd-0.80 worked flawlessly on it right out of -the box. - - -Features: - -This daemon's goal is simplicity and speed. It doesn't try and make -too many decisions for you. That's its beauty, but it may not be what -everyone's looking for. Some of the features this daemon has: - -One, simple heuristic to determine CPU load: "user + sys" time. -Ignore "niced" programs (setiathome, itself, etc). In my mind this is -consistent with what is meant when someone 'nice's a program to begin -with. (configurable in v0.85+) Designed for CPU's that support more -then two speed states, but works well with anything. Very fast, low -overhead /proc/stat gathering (method stolen from procps). Supports SMP -Will automatically switch to 'userspace' governor. Care taken to make -the code non-root exploitable (but please audit for yourself first!) -Frequency step size is configurable (default to 100MHz/step) 4 different -behavioral modes to choose from (SINE, AGGRESSIVE, PASSIVE, LEAPS), -which determine the behavior when the load changes. Configurable from the -command line. Written in C for speed and simplicity. Logging to stdout -or syslog Configurable Polling frequency in milliseconds (defaults to 1s) -Configurable highwater/lowwater marks for CPU usage. (defaults 80/20%) - -Many similar daemons use other methods to determine what speed to use, -such as battery status, AC status, temperature, fan status, etc. They all -have their place. I however feel that in the grand scheme of things none -of the above matters. When I'm not using my CPU, I don't care if it's -running at a slower speed. When I -am- using my CPU, I only need it to -be fast enough to handle the task at hand without hiccuping. And when I'm -taxing my CPU, I want it running full speed. That's all this daemon does, -monitor CPU load and adjust the speed accordingly. Since in all reality -my CPU is idle 99% of the time (or playing mp3's which it can easily do -at it's lowest speed rating), this by definition leads to low power usage, -low temperatures, low speed fans, and better battery life. +This program is essentially a simple client to the CPUFreq sysfs +interface. This means that you -need- to be running Linux v2.5 or later +that includes the sysfs interface. |