Vista vs. Julian. Round 3.
published: Thu, 26-Apr-2007 | updated: Mon, 18-Feb-2008
After yesterday's self-congratulatory blog post, Vista was lying in wait for me this morning.
It started out so well. Really it did. I downloaded and installed the Microsoft Office 2007 add-in for saving documents to PDF, and very well it worked too. I'd replied to emails, I talked to customers on the phone, I listened to Thievery Corporation on iTunes. It was that kind of quiet morning, with stuff getting done, but no stress about it.
...everything froze. iTunes stuttered and fell silent. I couldn't switch windows, I couldn't drag them. I finally managed to get Task Manager running after five minutes of waiting, and there it was on the performance tab: both cores were flat-lined at 100%. Something on this machine was running at such a priority and with such need for CPU cycles that nothing else was getting done at all. Clicking on the Processes tab was an exercise in frustration, first because it took so damn long to switch to it, and then when I realized that because of UAC all I could see were "my" processes, the ones started under my user account. They were all lying there stunned, flaccid at 0%. All the other processes were hidden behind the UAC wall.
So I clicked on the Show processes from all users button. Wait, wait,
interminable wait. I saw the
consent.exe process slowly start up and appear in
the list. Inch by inch it crawled forward like a man dying of thirst across
the desert, finding the odd spare CPU cycle here and there, enough to survive.
The screen flipped into the transparent mode ready to display the dialog. It
must have been levering itself forward on its stomach by now, desperately
getting to the point where... the dialog came up. I clicked on the Continue
button, not giving it any time to recover. The dialog slowly slipped away, and
the screen flipped back to full presence. And then the wait, the awful wait,
for the Task Manager to restart with elevated privileges.
Meanwhile whatever was running was still flat-lining the CPUs. The fan was whirring away. Whatever it was, it was gorging itself on two 2.33 GHz cores, drinking from the firehose, not letting up for an instant.
And then it was there, sorted by CPU usage:
svchost. Two or three of them kept
on appearing at the top one moment and then disappearing the next, playing
this game of catch-as-catch-can. Bugger: some damn service (or two, or three)
was hogging the CPU at elevated privilege. Who knows which ones?
Time for some surfing. I killed the machine; the first of many times I just held the power button down until it powered off. I'm not proud of this: I just wasn't going to wait for ten minutes for the Start menu to come up and for me to hit the Shutdown menu option (which of course is on a sub-menu).
There was talk about audio driver issues (sob). A lot of it was pre-RTM blog and forum posts, but there seemed to be some kind of consensus about USB audio being suspect. There was some chat about the indexing service, but I'd already twiddled those knobs and the indexer stated that indexing was complete. Time to uninstall the audio drivers. I powered up the XPS and Vista.
Then ensued a grueling four or five hours of powering the machine on, trying to do as much detective work as possible until the CPU flat-lined again. I uninstalled the audio drivers, no change. I started killing services, no effect. It was nasty, ladies and gentlemen: I was lying on the ground and Vista was kicking me in the kidneys. I'd surf with Google on another machine, giving me ideas to try and then pow, they didn't work and Vista flat-lined at 100%, goading me to try and do something. Uninstalling took a good 10 minutes a pop, installing anything up to 15 minutes because of the UAC confirmation.
Finally it got to the point when I had to go to the Delphi gang's monthly meet-up. I'd killed the wireless connection, unplugged the Ethernet, disabled Windows Update, removed the audio drivers ("Windows has found some new hardware, would you like to install the driver?" No I would not). The machine was still flat-lining at 100%. I'd booted, rebooted, brutally powered-off, and screamed at the LCD. The Vista Ultimate DVD was lying ready for a repair operation. I was exhausted with frustration (and somewhere in the middle of that lot was a 45-minute conference call with Ray, Mark and some third parties; god knows what they thought of my guttural responses).
I decided to leave it running at 100% while I drove to and met the guys at Panera. I selected Moby's Play: The B Sides for the drive — unlike Play it's a set of long ambient pieces. Anything to calm me.
I got back after dinner at about 10:15. The Mystify screen-saver was merrily drawing curves on the screen. The gas-guzzling service had finished and all is fine again. I've plugged in the wired and the wireless and installed the audio drivers and I'm listening to Mike Oldfield's Hergest Ridge as I type this.
No, I don't know what it was. I don't know why it happened. I don't know that I did anything to make it complete whatever it had to complete any faster. I certainly made it slower due to all the reboots. I think it's a ghost in the Vista machine, that absolutely positively has to get its work done NOW, and you are haunted until it does so. The next time it happens — and yes, I have no doubt it will — I'm just going to go get a coffee until it decides to play nice again.
But there is something fundamentally flawed with Vista in that this can happen and happen so regularly. You just have to read a few blog posts to understand that my experience is not uncommon: Vista periodically goes out to lunch and leaves the hamster spinning wildly on the wheel.
So this round was a bloody comeback by Vista. I really feel bruised and battered by this one. I'll admit I was at the point of saying screw it (and am still very close), let's just install XP.