Step 3: Apply Reasonable Virtual PC Settings
Figure 4 is an image of my XP system phoning home for system updates. Let's look at what we can do within Virtual PC and then what we can do with XP itself.
Figure 4 Poor performance from XP.
Judging by the visual cues at the bottom of the figure, this doesn't look good. There's a lot of disk access, indicated by the blinking green light on the Disk Activity icon. Now look at the CPU load. It's pegged, with four bars lit and shining. This is not a good sign! Also, in my wait for Windows Update, I'm not seeing network activity, indicated by the network interface having no "dewdrop" activity light. No, this is bad.
One of my problems appears to be thrashing—too many programs trying to run in too little memory. When this happens, applications are placed into disk storage when main memory cannot keep them available for quicker access. In this case, I'm running only one application, but my disk activity is way too high.
Maybe the PC settings will provide some clues? Figure 5 shows us the settings I started with. But first, let me shut down the running (er, strolling) XP instance. You can't adjust settings on a running virtual machine. Shutting down XP begins at the Start button.
Figure 5 Bad settings create poor performance.
What?! This instance has only 128MB main memory dedicated? No wonder we're thrashing. Figure 6 shows how to add memory to this virtual machine. I'll increase it to 256MB and try it out. Later, I may scale it back to 192MB and retry my applications. You need to experiment in the same way. While I'm at it, I see that my video memory is some 8MB. All I intend to do is check email and maybe run a compiler, so I don't need all that memory dedicated to pretty pictures. I'll set it to 4MB. It's a sacrifice, but one that's worthwhile to me. You may have different needs.
Figure 6 Adding and removing memory for better processing.
Notice the Open Application Preferences button? That will open the Virtual PC application preferences (see Figure 7). These are baseline settings that go across all instances. Let's check those settings before closing the dialog box. Just as I thought—it's not pausing the PCs when they're in the background. It also automatically loads all instances that were running when I last shut down Virtual PC. Finally, notice the CPU Usage setting; High Background Use is enabled.
Figure 7 Adjusting baseline settings for better performance.
All these settings mean that when I start the Virtual PC application, I'm starting every PC at once and each is grabbing all the processor it can in the background. I'm going to turn off the automatic restart feature. I'll have background PCs pause when they go to background, so long as I don't need them doing work in the background. If a PC must do work in the background, I'll try lowering the CPU usage to support more PCs working better.
Now that I've made good settings, I restart my XP machine and notice that restarting is much faster than before. Never underestimate the benefits of more RAM, in both your host and Virtual PC system! Windows spring to life. Applications launch more quickly. The processor bars don't stay lit continually. My network light is blinking, and shazam! I'm at Windows Update so much quicker! This is a usable system!
But is there more I can do to improve performance? I notice that my iBook is heating up while on my lap. Starting my Visual Basic Express beta seems to be grabbing some real processor time. What's this? My iBook fan just turned on? That's rare. It's time to tune XP itself. I supported Windows systems long ago, using a remote access link over dial-up. That experience sure helped me learn some great things about Windows performance. Let's go into the basics: interface and background performance settings. I'll outline a few Windows tricks for those of you who are new to Windows.