Saturday, December 03, 2005

How to - Undervolt your Laptop


A couple of posts ago, I mentioned how hot my brand new Qosmio F20 390LS1 laptop was running in. It came to the point the it was so annoying, thinking that I have made a bad purchase and possibly lead to the early failure of the components such as the hard disk etc.

I went about tinkering with the goal of lowering the CPU and motherboard temperatures, and possibly at the same time lessen the frequency that the on-board fan kicks in.

I had several choices:

1. Open up the case and apply heat-reduction techniques (like in a desktop)
2. Buy external kits such as fans and heatsinks
3. Lower the maximum clock speed of the CPU (i.e. Underclock)
4. Lower the voltage required by the CPU (i.e. Undervolt)

As I am currently in Yokohama, sadly far from Akihabara and can't buy the 'neat stuff', option 1 and 2 were out at least until I can get back there.

Option 3 wasn't really inviting since that would mean i would be putting a cap on the maximum speed of my processor.

And so it was left to option 4, Undervolting. If you are not sure what undervolting is, perhaps i can put it this way: Overclocking would be like buying an ordinary sedan and making it run like a Ferrari, whereas Undervolting would be buying a Ferrari and making its gas consumption like that of a mini.

Undervolting doesn't limit the speed of the processor at all. Processors are not created equal, yes even those that came out of the same batch. Some of them can run at faster speed (hence the overclock), and some can run at lower voltages (hence the undervolt). However, all of them can run at the original clock speed and voltage the manufacturers intended.

Like overclocking, with undervolting, your mileage may vary. Even if you hear that someone undervolted to an awesomely low level, yours may not even come close to that even if you have the exact same system.

A word of warning before you start. You will be configuring your laptop to specifications it was never meant to run in. Since there can be an infinite amount of possible configurations, some of the advices that follow may not apply to you. Use your good judgment as we go along.

Note: The following steps will only work on a Pentium M.

Software you will need:
1. Notebook Hardware Control - This is what we are going to use to adjust the CPU voltage. Has tons of other interesting features too.
3. Prime95 - This will be our stress testing tool. There are of course a lot of other programs out there.

Step 1: Finding the lowest stable operating voltage.

If you haven't installed the above-mentioned programs yet, install them now.

1. Try to simulate the worst ambient temperature that you will be using your laptop in. It is pretty cold here in Japan right now given that it's almost winter. I turned up the heater a bit to simulate summer conditions.

2. Ensure that you are using AC power source. This could take long.

3. Launch Prime95.exe, select Options->Torture Test. Select "In-place large FFTs", and click OK. It should now begin making calculations. Constantly monitor this window for any errors that might occur.

4. Launch Notebook Hardware Control. Go to the "CPU Speed" tab and select "Max performance" on both AC and DC power sources. On the same tab, Enable "Enable custom dynamic switching" and "Switch only between min and max multiplier". Verify that your system's lowest and highest and speed multipliers are the ones listed next to the icon with the power plug. Ensure that the settings shown on the status dislay on the lower portion of the window are the settings you want to modify.

5. Still in Notebook Hardware Control. Go to the "CPU Voltage" tab. Take note of the current voltage settings. You may want to note them down for future reference. Scroll down until you see your system's highest speed multiplier on the "On Multiplier of" column. Enable the checkbox next to it. On the "Set voltage" column, select the next lower voltage of your selected multiplier on the drop down list. Click "Set". NHC will perform its own stress testing on your machine for about 30 seconds, however, keep an eye on Prime95 and ensure that it is still running and has not encountered any rounding errors.

6. If you do not encounter any errors in Prime95, lower the voltage again in NHC. Remember to press "Set". Continue lowering the voltage and checking Prime95 until you encounter an error. This could take some time since there are a lot of voltage settings to go through. If you are the adventurous type, you may want to skip a few notches.

7. If Prime95 encounters an error, you will have to set the voltage setting in NHC up a step or two until you no longer encounter any errors. The Prime95 stress test will stop if it encounters an error, so you may have to do Step 3 again after you make the adjustment. Please note that some systems may become unstable immediately and cause the system to hang, lose display or display the blue screen of death. In which case, restart your system. The last successful settings will be retained in NHC.

8. After you have determined the lowest operating voltage, adjust it up by a step or two, this will serve as a buffer in case of any voltage fluctuations.

Step 2: Stability Testing.

1. Run Prime95 for a few hours, maybe even overnight. If you get an error, adjust the voltage setting up by another step. Let it run until you no longer get any errors.

2. While still running Prime95, perform the following actions in any order. We will now try to make your laptop fail by trying to fluctuate the voltage.

a. Remove and connect the power cord on your laptop.
b. Insert and remove PS/2, Firewire and USB devices.
c. Insert a cd/dvd on your optical drive and read from it.
d. Copy files over to a floppy disk or external device.
e. Browse the net.
f. Anything else you can think of.

After ensuring that your system is running fine on this multiplier and voltage setting, you may want to undervolt the other multipliers, most especially the lowest multiplier. Repeat the above steps as necessary. Also, remember to change the maximum or minimum multiplier setting in the "CPU Speed" tab accordingly. You may also want to enable the "Use only multiplier #1 and Voltage #1" checkbox instead of juggling around in dyanmic switching.

Benefits gained from Undervolting

I was quite impressed by the impact of undervolting. My Pentium M Sonoma 1.60 was able to go at 12x from 1.356V to 0.972V! A staggering improvement using only 71% of the original voltage at maximum speed. I also maxed (misnomer) out the settings in NHC and was able to go as low as .700V from .988V at 6x, also at 71% of the original!

I am still not quite sure of the tangible benefits though as it is still too soon to say. However, this should result in longer battery life, lower power consumption, lower CPU heat emission, lesser frequency of fan activation, and an overall wellness of being knowing that you have pwned your laptop!

As of the time of this writing, my CPU temperature is at 45C and the motherboard is at 40C. Now if that is not worth it, i don't know what is.

I would just like to remind you again that you should at all times be careful with these programs and the steps provided, use them at your own risk. They are not made for the faint of heart. Use your common sense.

0 Comments:

Post a Comment

<< Home