Any architecture supported by the kernel cpufreq drivers. Currently tested with x86 (Pentium and AMD), PowerPC and ARM too.
You need a kernel 2.6 or 2.4 plus cpufreq patch, Alan Cox already included it in the -ac branch. If you use kernel 2.6.0 or higher, everything is already in the kernel, check you have selected the right cpufreq drivers, see also #3. If you own a PowerPC (i.e. Apple) computer, and you use kernel 2.4 and have problems, then upgrade to benh kernel, cpudynd does work very well with his kernel.
Check that one of the following files or directory exist and return values with a cat:
Check also that you have enabled powersave and performance governor in the kernel. If they are enabled, you should see:
# cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors powersave userspace performance
cpudyn also support ACPI CPU throttling, but it doesn't work in every machine. It is recommended to use cpufreq drivers, it will work if the kernel supports your processor. Although I've already got additional patches for ACPI support, they will be included as soon as I can test them (I didn't ger any machine that works correctly with ACPI).
You should re-compile your kernel (see question #2) enabling cpufreq support.
I've learned that some kernels distributed by SuSE are not compatible with the standard (nevertheless, we added CPU ACPI power control for those kernels). If none of the files mentioned in #3 doesn't exist, cpudyn can do nothing.
On the other hand, check if CPU ACPI throttling works by starting cpudyn manually and reading its messages.
Because I have several laptops, and I was tired of struggling with scripts based in hdparm (for APM and/or ACPI) to spindown the disk, and lastly due to the lack of userspace support for changing the CPU frequency in the new laptops, but at the same time exploit the speed of the processor when I really needed it.
Basically because I dont need it. I just need these two states, go to the maximum when it's needed it. Go to the minimum if it's not needed. cpudynd is very good at reacting interactively to the CPU load.
If you did a make install, cpudyn is installed in /etc/init.d. If you wan it to be executed at boot time, you should add the corresponding links in /etc/rcX.d. Check the programn and SysV editors provided by your distro.
In case you use Debian, the links are automatically created if you do make install-debian
Many desktops hace CPUs that can change CPU frequency, if you want to lower the temperature of the CPU, the answer is yes.
It is also useful if you want to spindown your disk. cpudynd is able to spindown all IDE disks.
If you send the signal USR1, cpudynd puts the CPU at maximum speed. USR2 bring it to the minimum, HUP reset to the DYNAMIC (i.e. automatic) behaviour.
Ej:
killall -USR1 cpudynd
will put the CPU at the maximum frequency.
cat /proc/cpufreq
or
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
in 2.6 kernels.
Yes. I will do it, once APM and ACPI become more stable and they support more laptops. Currently, none of the kernel versions supports entirely my laptops, being the exception the powerpc 2.4 benh branch for PowerPC.
Check the processes that can be writing to disks, especially syslogd, cupsd, crond, exim.
Last versions of cupds renew its own certficate every five minutes by default and write it to /var/log/cupsd/certs/. Change that default period to a longer period, for example a day, in cpusd.conf:
RootCertDuration 86400
If you use apmd only for spinning down you disk (through hdparm), the answer es NO.
No, cpudynd has the same hdparm's "standby features" already included.
NOTE, NOTE: Since version 0.6.0 and with Linux 2.6 you can do it with -minf num option, where num is 0.0 < num < 1.0 .
Yes, by doing an
Yes, although the stats are collected for the two processors toghether (i.e. the measured cpu idle/load is half, if one CPU is at 100%, cpudyn will "see" 0.5). Future versions, hopefully 0.5, will fully support HT, SMP and per CPU stats and frequency.
Niced processes are ignored by default, it's not a bug, but a feature. Normally you don't want your overnight Vorbis encoder to heat so much the CPU, so just nice it ;-). But if you want to run in performance mode even for those processes, add the command line option "-nice" and you will get it.
You should mount the new sysfs in /sys. So check you have created the /sys directory and then added the following line to /etc/fstab.
sysfs /sys sysfs defaults 0 0