PHC stands for Processor Hardware Control and, as it's easy to understand, it allows users to customize some features of CPU control in a linux environment, as undervolting.
So what do we need? An Ubuntu (or Debian) box, usually undervolting is useful on laptops: it enhance battery duration and reduces the heat production. You will also need some time and patience, ;]
- You will need a kernel patch and a particular CPU driver so that the hardware control will be possible. First let's add the repo:
sudo add-apt-repository ppa:linux-phc/ppa
sudo add-apt-repository ppa:linux-phc/testing
sudo apt-get update - Now let's install the kernel and its headers:
sudo apt-get install linux-generic-phc linux-headers-generic-phc
First pause... restart your PC and be sure to choose your new *-phc kernel.
- As we will need to compile some stuff some Ubuntu users might need
sudo apt-get install gtk2-engines-pixbuf python-gtk2-dev build-essential
And then:
sudo apt-get install dkms debhelper
Before doing anything else we have to create an empty file to match dmks autoconfiguration: Intel users go with the first, AMD with the second line!sudo sh -c 'echo >> /etc/modprobe.d/phc-intel.conf'
sudo sh -c 'echo >> /etc/modprobe.d/phc-k8.conf' - Now you have to download the driver, choose it looking at your CPU: there are two choices AMD and Intel, be sure to take the right one.
- Unpack the package to a temporary folder. Open a terminal and move there:
cd **your_path**
Intel users can generate a debian package:make dkms_mkdeb
And install the resulting .deb package:sudo dpkg -i phc-intel-dkms_0.3.2_all.deb
While AMD can't generate it, so:sudo make dmks_install
Now you have your driver ready to go! - So we will unload the old driver:
sudo modprobe -r acpi-cpufreq
Once you're done load the new one, amd users will have the second line, intel the first!sudo modprobe phc-intel
If you experience the error: "FATAL: Module acpi_cpufreq is in use." you'll need to:
sudo modprobe phc-k8sudo sh -c ' echo "\n#blackist required to load phc drivers
And REBOOT =_= ...
blacklist acpi_cpufreq
blacklist cpufreq_stats" >> /etc/modprobe.d/blacklist.conf'
sudo sh -c ' echo "modprobe ##your module##" >> /etc/modules'
- Now I guess you want a cool GUI to easier setting VIDs: get it here. Unpack it to a non temporary folder and move there.
- You'll need to fix an error, so download this corrected file and save it to:
**your path**/phctool/inc/libs/
overwriting the existent file. - From the main phctool folder run:
sudo ./install.sh
- Follow the instruction (both yes will be OK)
- Create a new program link in the menu with "Main Menu" to the command /**your_path**/pchtool.sh
- done!
sudo phctoolthere you can set the voltages and see many infos about your CPU. If it happens that you can't refresh the actual values install msr-tools and run it with:
sudo apt-get install msr-toolsThe correct undervoltedvalues are not universal, so you'll need some testing. If you think you'll need a guide, then take a look here:
sudo modprobe msr
http://linuxsolver.blogspot.com/2011/10/how-to-set-cpu-voltage.html
Cheers!
Hello,
ReplyDeletei made it to step 6 so far. but if i try to load phc-intel i get an error: "FATAL: Error inserting phc_intel (/lib/modules/3.0.0-17-generic-phc/updates/dkms/phc-intel.ko): Device or resource busy"
i use ubuntu 11.10 on my esprimo v5535 with C2D CPU T7250.
please help me.
sincerly
johnson
Have you rebooted so far? Maybe a simple reboot will do it... let me know if it doesn't
Deleteyes i have but i still get this error.
Deleteok, can you paste the output of "uname -a"?
DeleteI'm a total noob to the whole linux world. usung linux for the first time today and decided to undervolt cause i think the laptop is getting too heated...
ReplyDeleteAnyways, great guide... But i'm kinda left clueless at step 11.
What do you mean by creating program links to menu?
Amoung the other stuff in the program list you should find something like "Main Menu". Once you lauche that you can edit the main menu, and also create a new link to phctool ^_^
DeleteCheers
Thanks a lot man... Undervolting works like a charm... This is a really cool blog you have up here too.
DeleteThanks!
DeleteStep 9, when trying to exec sudo ./install.sh the bash returns command not found. But the file is definitve there /home/Downloads and I'm in the right directory. I just don't know how to go on. Is it maybe i chose the option to encrypt my personal files?
ReplyDeleteTry with
Deletesudo sh install.sh
maybe you don't have running permissions
Cheers
ok, i forgot to load the driver ... now i was able to run install.sh, but when i run (in the right directory) sh phctool.sh oder sudo phctool nothing happens.
ReplyDeleteWhen i run sh phctray.sh it tells me:
Traceback (most recent call last):
File "./phctray.py", line 6, in
import egg.trayicon
ImportError: No module named egg.trayicon
It might be a problem of symlink. Try to launch it from your installation folder.
DeleteCheers
Isn't it dangerous to unload acpi-cpufreq totally? After unloading it and using phc, my fan doesnt speed up by high temperatures. PHC definately works, but for example the fan only turns uo @ 80°C with phc loaded, but turns up @ 55°C with acpi-cpufreq loaded.
ReplyDeleteNo, it shouldn't. AFIK phctool does not change your fan policy nor apci-cpufreq does, so double check your BIOS settings. What do you use to monitor the temperatures?
DeleteCheers