Tuesday, November 24, 2009

Cooling Things Down a Bit…



Hey! Today I'm going to be talking about fine-tuning the speed of your computers fans. In modern computers, the hardware inside of your computers case (or under your laptop's keyboard) can get extremely hot and can even destroy itself if not properly cooled. I've experienced this first hand when I was in high school, and it cost me a brand-new (at the time) "Athlon" CPU. Fortunately, with the help of my strong-arm'd uncle, the processor was replaced by the merchant I purchased it from because of faulty installation instructions. Then, and now, computer fans are vitally important, especially the fans that are moving air to and from your CPU (Central Processing Unit).

Fortunately the days of a processor destroying itself because of a faulty fan are coming to a close. Manufacturers such as Intel have designed their processors over the past several years to slow themselves down (which in turn cools them down) when temperatures approach a critical level. While this can certainly save us a lot of money and inconvenience, many users are experiencing significantly lower performance due to faulty fans, or unhelpful fan speeds. Other users have fans so loud they couldn’t forget about them if they wanted to. So I’m going to talk about taking control fan speeds, specifically in the Lenovo T60p (my laptop, and so continue my T60p series).

The best, and only, program to my knowledge that allows owners of Lenovo (formerly IBM) notebooks to adjust their fan speeds manually, is a wonderful utility called “ThinkPad Fan Control.” As of this writing the current version of the program 0.62, and it supports a whole host of Lenovo/IBM models, specifically ThinkPad models. It is updated fairly frequently and can be found here. It free to anyone who would like to use it, but users of the program are encouraged to donate some amount to sponsor further development and continued support of the program.
You’ll have to scroll past the list of donors at the top of the page to download the program. As you do, you’ll probably notice simplistic the website design is, and ThinkPad Fan Control is no different than its website: very simplistic. There are no fancy graphics or buttons in the programs layout, and at first glance it may seem difficult to understand or use. But be assured that the program functions flawlessly on most ThinkPad models, and for most users the setup of it will only take two or three minutes.

After downloading ThinkPad Fan Control (download link) and opening the zip archive it is packaged in simply run the setup and follow through the first few options. Before completing the installation it will give you the option of starting itself up when you start windows. If you would like to let it control your fan permanently and forget about your CPU fan (like me) this is a very good option to ensure is selected. After the installation, the program will open and you will see the window in the image on the right.

The numbered items in the “Temps” window pane are the current temperatures of your computers various components. There are several important temperatures to take note of: “cpu” is the temperature of your processor. This temperature should not approach 90 degrees Celsius, or the processor will begin to slow itself down and hence, slowing your entire computer down. A good temperature for a processor like mine (Intel Core2Duo) is between 45C – 55C if you’re surfing the internet, using a word processor, or sending grandmamma an email using Outlook. These temperatures will go up to about 65C - 85C if you are doing something intensive on your computer like burning a DVD, running a virus scan, watching high-quality video, or playing a game.

The second important item to watch for is “gpu,” which is the graphics processor of your computer. This item may not show up for you depending on your graphics hardware. If it does, the temperature will vary depending on your computer. Its temperature will go up if you are editing photos in Photoshop, rendering 3D graphics, watching a high quality movie, or playing a 3D game. This temperature should not go higher than 100C, but temperatures will vary depending on your computer’s graphics system.

The third item worth mentioning is “bat” which represents your battery. This temperature should generally stay about the same. Note your battery temperature when your computer first starts up. If you ever notice it climbing more than a about 5 degrees, disconnect your battery and call support, and explain the situation to them. Excessive heat is the number one killer of Lithium-Ion batteries.

Beneath the “Temps” window pane is the options “all” or “act.” The default selection is “act” which stands for “active” and is telling the program if you want to view all temperature readings or just those that represent devices that are actually on your computer. For most users (including myself) there is probably no reason to view the inactive temperature readings, so this option is best left set to “all.”
The second half of the programs window contains the “Fan Control” section, which is the primary purpose of the program. There are three fields which display the current state of your cooling system. The first is “State” which cryptically tells the user what state their fan is currently in. “Fan 0” is when the fan is switched off, “Fan 1” is the lowest fan speed, with “Fan 2” – “Fan 7” representing increasingly faster fan speeds. If you ever see “Fan 64” in this field, that is “Ultra” speed, only intended to be used for short periods of time when the system desperately needs cooling.

The second window pane “Switch” displays the temperature a device in your system must reach in order to trigger a change in the speed of your fan.
The third pane, “Speed” displays the current speed of your systems fan. If this box consistently displays a “0” RPM regardless of the load you place on your computer, and you never hear a noise coming from your computers fan, your computer occasionally locks up for no reason, and your temperatures in the “Temps” section are rather high, you likely have a faulty fan that needs to be replaced. Otherwise, the speeds represented in this window will vary depending on the fan’s state, but for my laptop they tend to be between 2400 – 4000 RPMs, depending on the tasks I am performing.

The bottom portion of the program is where you control your fan speed. For most users, I would strongly suggest you leave the Mode set to “Smart,” which will intelligently control your fan speed to ensure quiet operation unless needed. The BIOS mode simply returns control of your system fan back to your computers hardware (i.e. the default settings you’ve had all along). This mode is useful if you want to use ThinkPad Fan Control to monitor the temperature of your computer only. The third option, manual mode, allows you to set your own fan states (Fan 0 – Fan 7, and even Fan 64!). This is useful if you plan on playing a game or doing something intensive and you don’t want your fan changing speeds back and forth as you play. It is also useful if you have a very loud fan and you are in an environment where you need to keep quiet (like when your wife is asleep in bed next to you…)

There is one last bit to go over, ThinkPad Fan Control has a configuration file that can be changed to change the way the program operates in nearly every way. This feature is for more advanced users, but if you decide you’re up for the challenge, you can find a shortcut to the configuration file in your windows start menu. A final warning, I would advise against running your fan at “Fan 64” for long periods of time, as this is known to burn out fans very quickly. The mode is for short bursts only.

I hope this post was helpful or at least interesting. I will post again in the future and go over how to control fan speeds other laptops, Macs, and desktops. If you are really interested in having a cooler laptop, whether you have a Lenovo or not, I would suggest checking out my post on undervolting, too. Hope everyone has a good day,

Rob

Sunday, November 22, 2009

Undervolting the T60p

Hey guys. The first thing I’m going to talk about is undervolting. Undervolting is essentially supplying your Central Processing Unit (CPU) with less voltage than it was originally designed to operate with at a given speed. Why would you ever want to do this? Well, there are two reasons: one, to save power, which is especially important if you use a notebook. The other reason is to limit the amount of heat your processor (CPU) generates.


The main theory behind undervolting is a common tale. Large chip manufactures like Intel and AMD produce as many CPUs as there are personal computers in the world (more or less), and as much as we would like to believe that they test each and every chip made to determine its ideal operating conditions, this isn’t true. They do, however, select samples among every “batch” of chips produced and perform rigorous testing on them. These tests determine a number different things, from how fast the processors clock speed will be set, to how much it will cost when it is sold, what model number it is given, and yes, its default voltages.

So what this means, so the legend has it, is that not all processors are built the same. You remember your friend from high school that was driving the first car his grandfather ever bought, and the thing was still running fine? The same is true with processors, sometimes you get a lemon, but sometimes you strike silicon gold!

When I first heard the term “undervolting” several years back I read over it and didn’t pay it any attention. I said, “those crazy college kids, overclocking, underclocking, overvolting, undervolting, they’re going to fry their machines.” I’m not always one to play it on the safe side, but I draw the line at something that would endanger my laptop. The expense of repairing it myself would still come close the cost of a new purchase, and let’s just say I’m not on the market for a new machine this month, and I wasn’t a few years ago either. But over the last few years, as my back has become hunched, my gut has protruded, my vision has darkened, and my skills have improved I’ve begun to develop a sort of extra-sensory “gut” feeling about what a machine can and can’t handle, and I’ve been surprised to find how reliable that gut feeling is. So, when I came across the term lately I did some research on the subject and found out that undervolting was not dangerous to a computer, and often it did the machine some good, as excess heat is one of a computers natural enemies.

After doing more research and preparation than I’d care to admit, I downloaded and installed several programs. Some of them I’d used before, but as I’ve recently installed Windows 7 (x86), some I’d heard of but never used, and some were entirely new to me. The first was a program called CoreTemp, which gives extremely accurate temperature readings from your CPU. My laptop has a Core2Duo T7400. For those of you who know more than you should about CPUs, the T7400 is a Merom mobile Core2Duo, with a 65 nanometer die size, 64KB of L1 cache, 4MB of L2 cache, 667 MHz front side bus, EM64T instruction set, Intel Virtualization Technology, with a maximum clock speed of 2.16 GHz. Needless to say, when my processor kicks into full gear, it generates some heat, and causes some problems in the lap area, if you know what I mean.

When I opened CoreTemp and took a look at my ultra-accurate temperatures under a full load, I thought that 80 degrees Celsius was a bit excessive, and an idle temperature 55 C could surely be improved somehow. It was burning my legs, not to mention what it was doing to my future children (sorry little Johnny).

So, I took note of those temperatures, and went on to the next program I had installed, called RightMark CPU Utility. This wonderful utility was written by a French individual who must share the same passion for computers as I do, though they are obviously much more skilled. It’s important to know a bit about how the Core2Duo (and similar processors) operate in order to understand undervolting. Intel introduced a feature known as “Speedstep” several years back that allows a processor to reduce its speed (and hence, the voltage used) to match the needs of the computer at any given time. So, if you’re chatting on AOL Instant messenger your processor might be operating at 999 MHz and using 0.95 volts, but if you were playing Elder Scrolls IV: Oblivion full screen with high quality settings it or editing photos in Photoshop the processor would likely be running at 2.16 GHz and using 1.25volts. This might not sound like much, but when you consider that your laptop battery only supplies around 10 volts to your entire laptop, you can see that such a small change is not so small at all. So, the processor takes a series of steps up or down depending on what your computer needs to run the task you are performing. And where undervolting comes into play is in seeing just how much power your processor really needs in order to accomplish those tasks. So, back to RightMark’s CPU Utility.

In the utility you can take control of the voltages supplied to your processor at each given step it takes. My processor, the C2D T7400, is locked at a range of 0.95v – 1.25v, meaning it will not accept any voltages outside of that range, and will operate as normal if you try to tell it to do otherwise. In order to get a more accurate idea of the improvement (or lack thereof) I used another program I downloaded alongside RightMark CPU Utility called “Orthos” written by a Johnny Lee. Orthos is a little program that makes your processor work like it’s never worked before, which results in heat and high voltage. So, I ran Orthos and watched my CPU temperatures shoot up like weeds in a rose garden. Then, after noting my temperatures in CoreTemp, I lowered the voltage supplied to my processor at its highest step (2.16 GHz) from 1.25v to 1.15v and ran Orthos for 45 minutes in order to get a good idea of whether the underclocking was working, and to test the computer for stability at a lower voltage. If the voltage is set to low, you will likely experience the blue screen of death or Orthos itself will inform you none-to-politely that there has been an error in processing while it was running its backbreaking code on your processor. Since during my 45 minute trial I experience neither of these, I continued to lower the voltage down to 1.0875v, which is when Orthos told me it had encountered problems. Trusting its advice, I raised the voltage for my top step to 1.10v and ran Orthos for about five hours while reading up on some topics I’ll hopefully post in a later blog. After five hours of nonstop testing I figured the voltage was stable, and set the voltages for my other steps according to the amount I had decreased the voltage for the highest step.

The results were amazing. My processor was now running at about 15 degrees cooler than it had been running under a full load, and my battery life had improved by about twenty minutes! I spoke to my friend Scott, a fellow enthusiast, and he was wary of performance in real life applications. He suggested I do some real world testing to see if the performance of my computer was negatively affected by my undervolting escapades. After a brief debate about CPU theory I reluctantly agreed and began my testing.

I started out by encoding a DVD I had lying around to H.264, a task that will make any CPU cry for their mother. I noted the results, and the task actually ran slightly faster when my voltage was lower, but overall the results were the same, the exception being my laptop was much cooler when running on a lower voltage. I then played Elder Scrolls IV: Oblivion for a while to see if it had any negative impact on game play, and to my astonishment the game ran much smoother, loaded faster, and had a much higher frame rate. After some serious thought about this, I am theorizing that the reason for this is because with a cooler CPU my laptops GPU (an ATI FireGL v5250 256MB) was able to run cooler as well (it normally gets hot enough to fry an egg on) and as a result Oblivion ran much better. My final test was using Sun’s VirtualBox to run a virtual machine with Windows Vista Ultimate, which also performed as well or better than under my higher voltage. Through all of these tests I didn’t experience a single blue screen or anomalies within the programs themselves.

So, that was my experience with undervolting, and I am very happy with the results,
Rob

Welcome!

Welcome to Rob’s Tech Blog. As my first blog post, I am going to go over what I am planning on doing here and what my first few posts will be about. First, I am starting this blog to track my computing adventures as well as make what I’ve gained available to anyone who might find it as interesting as I have. Second, my first series of posts will be about the “improvements” I’ve made to my personal laptop, a Lenovo T60p 8741-A11. Thanks for reading, hope you enjoy it all as much as I have,
Rob