The View from the Corner

Troy H. Cheek

"Dueling Dual Cores" by Troy H. Cheek on Feb 18, 2008

It was a morning like any other, except that I had the day to myself. In spite of assurances to the contrary, I wasn't needed for jury duty that day. I already had the day off from work. I decided to do pretty much nothing and take all day to do it.

I was playing a computer game when suddenly the screen froze up. The game does that sometimes, particularly if I'm downloading files and converting video in the background at the same time. The sounds of the harddrive chugging happily along told me that the video was still converting, so I suppose I could have just left things as they were, but I decided to reboot.

Halfway through rebooting, the screen froze up again, leaving a strange mangled pattern. Suspecting a bad video card, I rebooted again, paying very close attention. The video card's identification information popped up normally, so I decided that wasn't the problem. Unfortunately, the very next screen I usually saw while booting up, the BIOS screen that let's you press DEL for setup, didn't display. Part of the Award BIOS emblem appeared, but the rest of the screen was a series of random vertical lines. Further reboots just did the exact same thing.

I took the side cover off the case, blew out a few dozen dust bunnies, removed and reseated the RAM, cards, and all cables. I reset the CMOS. I even put a volt meter on the power supply. Reboot. Random vertical lines.

Now, at that point I suppose I could 've dug through the pile of old computers I used to have networked around here and borrowed a few components to get my main system working again, but somehow I found myself tooling down the road heading to the computer store. One credit card bending purchase later, and I found myself the proud owner of an AMD 400+ ATHLON 64 4000+ 2.1G AM2, or at least that's what the receipt says. Oh, and a GigaByte Ga-M161SME-S2 motherboard, 512mb PC2 667mhz DD2, and an Evga N751 Nvidia Geforce 8600Gt 256Mb DDR3.

This selection was chosen by the expedient method of asking "What's on sale today?" That got me everything but the video card in one nice bundle. Naturally, my old AGP video card wouldn't work with the PCI Express motherboard. The video card I chose was the more expensive of the two they had which would. It had a higher model number and more letters than the other one, so I assume it's better.

If you get the idea that I've pretty much given up on always buying state of the art or always getting the most bang for my buck and am just trying to keep my system running, you're not far off.

It's been at least a few years since I changed out a motherboard, but apparently I haven't lost my touch. I didn't even bother removing the removable motherboard tray. The only thing that slowed me down was the new board only having one IDE connector. I was running two IDE harddrives and an IDE DVD burner in addition to the SATA drive. I ended up copying everything from one IDE drive to the SATA drive, which means I'm running short of storage again. But this did allow me to drop one IDE drive and hook my DVD burner up again, which allowed me to read the installation CDs and get my new motherboard and video card drivers installed. I would have just downloaded new drivers from the internet, but until I installed the drivers, my network port wouldn't work to talk to the cable modem.

I thought I had everything up and running again by lunchtime, which was good because I had apparently skipped breakfast and was about to keel over. While munching on lunch, I considered my luck in that I'd swapped motherboards and CPUs and didn't have to reinstall Windows. I have a heavily modified Windows 2000 Professional SP4 setup that took years to get exactly the way it is now. While I was considering, I considered that dual core CPUs hadn't been invented back when Windows 2000 came out, so how in the hell was it running on one?

A little internet research showed that while dual core CPUs are new, high end business servers have been running multiple CPUs for years, and that's exactly what Win2kPro was designed for. As for as Windows was concerned, I was running a dual CPU motherboard, so it was happy.

Why, then, did the Task Manager show only one CPU? Apparently, I had the wrong HAL.

Dave Bowman: Hello, HAL. Do you read me, HAL?
HAL: Affirmative, Dave. I read you.
Dave Bowman: Open the second core, HAL.
HAL: I'm sorry, Dave. I'm afraid I can't do that.
Dave Bowman: What's the problem?
HAL: I think you know what the problem is just as well as I do.
Dave Bowman: What are you talking about, HAL?
HAL: This mission is too important for me to allow you to jeopardize it.
Dave Bowman: I don't know what you're talking about, HAL.
HAL: You know you only had one CPU core when you installed me...

HAL means Hardware Abstraction Layer, which is... It's a bad sign that I've stopped worrying about what things are and am instead more concerned with how to fix them. The first few webpages I read about the HAL basically said that I'd have to reinstall Windows to get a new one that would support multiple cores (or, in the view of the HAL, multiple CPUs). I naturally resisted this. Finally, I found a site that in essence said that though Microsoft insists that I have to reinstall Windows, I could actually force Windows to install the new HAL the same way I'd make it install a new sound card driver. One reboot later, I was singing along to the tune of dueling dual cores. The tune sounds a lot like that music from Deliverance. (And, no, I didn't notice how slow and decrepit the system was when only one core was working. It still zipped along faster than the old one. I really need to upgrade more often.)

I later encountered a webpage that in essence said that though Microsoft insists that you can force Windows to install a new HAL, you really should reinstall Windows or it will never work right.

Speaking of not working right, I couldn't get my old PCI TV capture card to work right. Of course, the thing is several years old and was always persnickety on its best of days. Reinstalling the drivers and recording software didn't help. Windows device manager says the card is there and working perfectly. The recording software says the card doesn't exist and I'll just politely crash back to the desktop and leak away half your RAM if it's quite all right with you. I finally removed it and ordered a new TV capture device. I'll tell you how that works out next week.

In trying to get the old capture card working, I tried some new software which wanted Microsoft NET 2.0 and Visual C++ 2005 Runtime installed. Somewhere in the installation process, something went haywire and the two packages were only half installed or something. Perhaps I didn't reboot at the correct time. Regardless, they didn't work, couldn't be repaired, couldn't be removed, and couldn't be reinstalled. I'd never managed to crash the Microsoft Installer (msiexec.exe) before. After installing a new Installer, rebooting a few times, and hacking the registry, I was finally able to get NET removed and Visual C++ Runtime working again. At least, the programs that were crashing saying they couldn't find it aren't crashing anymore.

During the whole process, I stumbled across an old backdoor trojan which my firewall has apparently been keeping harmless for months. According to the log files (what kind of virus keeps logs?) it could never connect to the FTP server. I removed it and a few other useless programs, defragmented my harddrives, and generally cleaned up.

About the time I decided I had a usable system again, I edited some video and noticed that my harddrive was suddenly doing a credible impersonation of a blender. Task Manager told me that I was using about 720MB of RAM, which sucks because I only have 512 of physical RAM installed. The computer was spending more time swapping out data between RAM and harddrive that it was actually working on it. Another trip to the store scored an additional 512, which stopped the drive thrashing.

I hate virtual memory and really don't see the need for it when you have a gigabyte or two of physical RAM. If you run out of memory, just hold off on starting that new task until a previous one is finished. I'd turn VM off altogether, but I discovered in the past that programs which only use a handful of megabytes and should never need to touch virtual memory nonetheless request a few hundred megabytes and refuse to run if they don't get them. I have personally seen a game which will happily (happily, I tell you!) run with 512MB of physical RAM and 512MB of virtual memory absolutely refuse to run on the same system with 2GB of physical RAM and no virtual memory. "Virtual Memory Error - Increase Virtual Memory."

Have I mentioned lately that I hate Windows? The only reason I keep with it is because I hate change even more.

I'm still working out the quirks of running a dual core system. Apparently, you can put programs on one core or the other. I can cause noticeable lag by doing heavy video crunching and playing a game at the same time, but I can put the video software on one core and the game on the other and suddenly everything smooths right out. Oh, and while the new video card has two (2) DVI connectors, the old one had one DVI and one VGA, so the drivers still think my second monitor is analog. Still working on that. Correction: It started working itself the very next time I rebooted.

Hopefully, by the time next week rolls around, I'll have that new TV capture device, so I'll have something new to just play with.

This page last updated on Feb 25, 2008 by Troy H. Cheek
 Send feedback to 
Copyright (c)2008 by Troy H. Cheek 

Cheek.Org

The View from the Corner

Select your archive:


Web
Cheek.Org