Friday, September 28, 2012

The CPU in my laptop and the headlights on my car

I love my car. I also seem to form attachments easily to inanimate heaps of metal, plastic, and circuit boards. So, I felt almost betrayed when the low-beam bulbs on my car went out within five minutes of each other. It wasn't as bad as the time I had alternator trouble in a snow storm in upstate New York some 15 years ago, but, it was still something that had to be fixed immediately. One look at the headlight assembly and the user's manual told me that I could either choose to get replacement bulbs and suffer through a couple of hours of frustration, with a real chance of failure at the end, or take it to the dealership.

The people at the dealership were extremely nice, treated this as an emergency, and squeezed me in between others' appointments so I could drive that night. I got to enjoy some coffee, nice background music, free WiFi, and read some interesting papers on topological dissimilarity measures instead of getting my hands cut and scraped. Even though I ended up paying several times more than what the bulbs themselves cost, it was worth it. I could have done the work myself, but it was just hard enough that the experience probably would not have been enjoyable, and I might have ended up without the sense of accomplishment that is always the real payoff when you fix things yourself.

After all, I can occasionally see the benefit from having 8GB of memory on my MacBook Pro, but doing the upgrade provided that same sense of accomplishment (even though one of the screws went missing some time later).

Still, the MacBook Pro is not my main laptop. No, that would be my ancient Lenovo which is now a year older than the last time I complained about not being able to bring myself to get a new one.

Basically, even though I can agree that the insides of this machine are clearly behind the times, I can't find a machine that combines all the external characteristics I value even more at a reasonable price.

I really don't want a chiclet keyboard. I can't remember gestures and swipes and all that jazz, but I want a touchpad that is small and sensitive enough that I don't have to move my fingers much to navigate the screen. I want the touchpad buttons to be where my thumb naturally goes so I can choose whether I want a right-click or a left-click without much effort and thinking.

I am sorry, but 1366x768 just won't cut it—I want more vertical resolution, not less. So 1600x900 or 1920x1080. And I want that in a 14 or 15 inch monitor. I do not want a glossy screen. I want a large hard drive. I like the idea of 32GB SSD cache in front of a 1TB drive.

I want to be able to install Linux (specifically, ArchLinux on it), with audio and wireless networking working without much effort.

And, I do not want to pay through the nose for it.

As far as I can tell, such a beast does not exist.

But, the beast in me has been pushing for me to do something, anything.

So, it was with that internal nagging that I found myself looking through Lenovo forums. One thing lead to another and I don't know how, but I eventually found myself looking at a post pointing out the list of CPUs that would work with my Lenovo 3000 N100. Wait, what? The Apple store in Chelsea requires me to get permission from a genius before they can decide whether I should be allowed to procure a screw, but I can just get a new CPU and drop it in my Lenovo? Surely, you must be joking.

See, I had never really paid much attention to the cover behind which I knew was the fan. But, the only time I opened that cover was when I was trying to clean up after having spilled a large mug of hot Turkish tea all over the computer (these things have a way of happening to me), and I had failed to notice that tucked in the same compartment was the underpowered Core Duo T2300E CPU. So, I turned off my computer, and went exploring.

The first thing I found was a pad of dust that had accumulated between the fan and the vents. This half-inch thick thing which I looked like a filter that was purposefully put there did explain why the fan was working over time whenever I converted some videos from my camera's mov format to Xvid compressed avi files using ffmpeg.

Removing the fan, and cleaning the accumulated dust, and turning the computer back on was a rewarding experience. After all, that's why I like programming: Instant feedback.

Here's how things looked after the clean-up:

Long story short, I found a Core2 Duo T7200 on Amazon. That would give me a top CPU speed of 2 Ghz instead of 1.66 Ghz, the L2 cache would go from 2 Mb to 4 Mb, and I would gain the ability to run install a 64 bit operating system on this machine.

I ordered the component from a company with the fictitious sounding name Mega Micro Devices, Inc. via Amazon, and got it via free shipping in a couple of days.

I was really eager to try it out, so I forgot all about taking photos and all that. I did take a screen shot of CPU-Z running on the old CPU:

I reopened the compartment and got the fan and the heat sink out of the way. I cleaned the contact surface of the heat sink and applied thermal compound to it using instructions I found on Arctic Silver's web site. Then, I applied thermal compound to the CPU and drop it in the socket. Tighten one screw here, put the heat sink back in its place, tighten four screws, re-connect the one cable I had removed to get the heat sink out of the way, put the fan back in place and tighten those screws, put the cover back on, and tighten two screws, and I was done.

Before the first boot, I did remove the hard drive, just in case. The first boot was done using a CentOS rescue USB disk I had lying around. The BIOS immediately recognized the new CPU, and CentOS booted with no problems. After booting into Gnome and running Firefox a little, I was eager to put the hard drive back in and boot into Windows XP.

And, I did. Everything seemed OK, so I did some video encoding while watching some campaign ad videos on YouTube. Still fine.

Now, in most cases, the maximum speed of the CPU in this system does not make much difference because it is not running at top-speed anyway. In fact, both the old one and this one go down to 1Ghz when not much is happening. Still, when something does need the extra speed, like encoding videos, I get that extra, and the task completes faster.

The CPU upgrade nicely rounded the memory and hard drive I had already put in to this laptop. For the combined cost of these three components, I could have gotten a low-end laptop with an i3 or i5, but that would have meant using a keyboard I hate, and looking at a screen with all sorts of reflections and not enough vertical real estate. And, I would have ended up with a smaller hard drive. So, no thanks. I'll wait.

And, here's the CPU-Z screen shot after the upgrade:

Now, the next task is to install the 64-bit ArchLinux distribution.

I derive a lot of happiness from being able to tinker with things like this. Call me old-fashioned, but the sealed systems with everything soldered on I see out there really do bother me at an emotional level. How do you feel?


  1. Well, I guess I'm old fashioned, too. Part of the joy is doing exactly what you did. Now the headlights...I probably would have done them myself for the experience. Once I learned how badly it sucked, I can remember that experience next time and hire it out.

  2. I'm doing this right now, actually, I put in a T7200 into the exact same laptop. Trouble is that when I stress test it in prime95, it shuts off after a few hours because of overheating, most likely. I put back in the original T2300E that it came with, and I'm running prime95 as we speak.

    So my question for you is that have you (a) done stress testing (b) have any idea how to change the maximum value TJUNCTION to 100C rather than the 90C that I think the bios is aware of for this chip... I'm pretty sure that when it passes 90C its shutting off.

    1. I did stress test, but first, I cleaned the area around the fan and the air vents very well.

      I also cleaned the surface of the heat sink using high purity alcohol and put fresh thermal compound on the CPU and the heat sink as described in the Arctic Silver document linked above.

      Good luck.

    2. I ran Prime95 again for an hour to see the maximum temperature I could get and it never went past 74C on either core.

      All I can think of is the possibility of accumulated, packet dust between the fan exhaust and the vents. When you remove the fan, if you see something that looks like a filter pad in front of the vents, remove it. It's packed dust and it will prevent your CPU from cooling.

      In normal operation, the temps on this system rarely go over 49C.

  3. I'm running the T2300E with prime95 for a few hours now and the temp is 78C... I will take the machine apart again tomorrow and re-install the T7200 and clean up the cpu, re-apply thermal paste, and clean up the fan exhaust (which I eyeballed before and I think is pretty clean already). Will check for the 'filter dust bunny pad' also, thanks.

    Also I read that people suggest tightening the cpu screws cross-wise, to apply the most torque and least gap between.

    Love keeping this old box running, my wife is using it as her personal machine and I just thought I would sssspeeed it up!

  4. Ok perfect. Ran the T7200 for 32 hours with prime95 and it's stable. Max it reaches is about 83C. Idle is a lot lower.

    The problem was the old thermal paste on the copper heatsink, because the cpu dies are different sizes from the T2300E and the T7200, it was raised slightly on the new chip, and that space was enough to cause overheating.

    The fan was clean, I think I cleaned it a while back, and it's been on a desk since.

    Very happy now ;) thanks for your help, much appreciated.

    1. Excellent news. Glad it worked for you.