CPUFreq
From Ubuntu Document Storage Facility
file2.png Doc Info |
Written By: pharcyde |
Archived By: Bonzodog |
Original Thread: here |
Works with release(s): All releases
of ubuntu
|
Works on: All Desktops |
Contents
|
HOWTO: CPU Frequency Scaling w/ Kernel Module
I thought I would write a little howto on how to get cpu frequency scaling to work directly with the kernel modules. These modules are generally more efficient for performance computing and battery life.
Prerequisites kernel >= 2.6.9
Step 1: Enable BIOS Support
Enter your BIOS at boot and make sure Cool'n'Quiet (AMD) or SpeedStep (Intel) is enable for you CPU. Some BIOS may not have option at all. If that is the case it is probably enabled by default. Other BIOS may have the option but it is listed as another name altogether. If that is the case check your BIOS manual for more info.
Step 2: Remove Userspace Scaling Software
powernowd
file.pngCode: |
sudo apt-get remove powernowd |
cpudyn
file.pngCode: |
sudo apt-get remove cpudyn |
Step 3: Install CPU Module
Identify your cpu type by running the command
file.pngCode: |
cat /proc/cpuinfo |
You can also Check the following links:
AMD Sempron/Athlon/MP ( K7 )
Socket Types: A, Slot A
file.pngCode: |
sudo modprobe powernow-k7 |
AMD Duron/Sempron/Athlon/Opteron 64 ( K8 )
Socket Types: 754, 939, 940, S1 ( 638 ), AM2 ( 940 ), F ( 1207 )
file.pngCode: |
sudo modprobe powernow-k8 |
Intel Pentium 4 and Intel Celeron M
file.pngCode: |
sudo modprobe p4_clockmod |
Intel Core Duo
file.pngCode: |
sudo modprobe speedstep-centrino |
Intel Pentium M
file.pngCode: |
sudo modprobe speedstep-centrino |
Others (Unknown)
I'm not entirely sure which cpus are
supported using this module. If your cpu doesn't work with one of the
above methods try this one.
file.pngCode: |
sudo modprobe acpi-cpufreq |
Step 4: Scaling Modules
file.pngCode: |
sudo modprobe cpufreq_conservative sudo modprobe cpufreq_ondemand sudo modprobe cpufreq_powersave sudo modprobe cpufreq_userspace sudo modprobe cpufreq_stats |
Step 5: Testing/Configuration
Show Available Governors
file.pngCode: |
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors |
You should see output similar to
file.pngCode: |
powersave conservative ondemand performance |
conservative
Description: CPU frequency is scaled based on load in incremental steps up and down.
file.pngCode: |
sudo -s echo conservative > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor |
Advanced Configuration Options
file.pngCode: |
cd /sys/devices/system/cpu/cpu0/cpufreq/conservative |
ondemand
Description: CPU frequency is scaled based on load.
file.pngCode: |
sudo -s echo ondemand > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor |
Advanced Configuration Options
file.pngCode: |
cd /sys/devices/system/cpu/cpu0/cpufreq/ondemand |
performance
Description: CPU only runs at max frequency regardless of load.
Configuration Dir: N/A
file.pngCode: |
sudo -s echo performance > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor |
powersave
Description: CPU only runs at min frequency regardless of load.
Configuration Dir: N/A
file.pngCode: |
sudo -s echo powersave > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor |
Step 6: Load Modules at Boot
Add the following lines to the end of /etc/modules, one line at a time, and where CPU_Module is the Module from Step 3
file.pngCode: |
CPU_Module cpufreq_conservative cpufreq_ondemand cpufreq_powersave cpufreq_stats cpufreq_userspace |
Step 7: Configure Modules at Boot
This step needs to be done in order for the modules to retain your settings.
Make sure you have sysfsutils installed
file.pngCode: |
sudo apt-get install sysfsutils |
Then add the following lines to /etc/sysfs.conf
file.pngCode: |
devices/system/cpu/cpu0/cpufreq/scaling_governor=ondemand |
Where ondemand can be changed to another governor type (i.e.
conservative, powersave, etc.). You can also add other configuration
options that are specific to the governor selected.
Useful Links
- http://ubuntu.wordpress.com/2005/11/04/enabling-cpu-frequency-scaling/
- http://martin.ankerl.org/2006/08/16/how-to-make-firefox-40-percent-faster/
- http://gentoo-wiki.com/HOWTO_Undervolt_a_Pentium_M_CPU
- http://wejp.k.vu/projects/howto_cnq_athlon_64_x2/
- http://ubuntu.wordpress.com/2005/11/04/enabling-cpu-frequency-scaling/ Enabling CPU frequency change from Gnome panel (CPU freq monitor applet)
Categories: Edgy | Dapper | Breezy | Power Tweaking