This weekend during an unexpected burst of energy, I tackled the problem of my IDE drive which seemed to have gotten slower recently. A little detective work lead me to the difference between PIO and DMA mode. (Which I previously hadn't paid any attention to. Why not? Windows takes care of all this hardware stuff, right?)

If you have sufficiently current hardware, DMA mode should be much faster than PIO mode. As I understand it (and I'm not a hardware geek) PIO mode sends the data through the motherboard first, and makes the CPU do more work.

To see if this might be the problem, in the Device Manager, expand "IDE ATA/ATAPI controllers".  Right click on "Primary IDE Channel", then go to the "Advanced Settings" tab. In my case, the "Current Transfer Mode" was "PIO", not the expected "Ultra DMA Mode 5".

Why does this happen? Check out the knowledge base article: http://support.microsoft.com/?kbid=817472 In a nutshell, Windows sets the mode back to PIO mode if it sees enough CRC errors.

One web page suggested uninstalling the Primary IDE Channel, then rebooting. When the system reboots, Windows automatically detects the IDE Channel and installs it anew. Trying this, I was pleasantly to see that it worked. My Primary IDE Channel was happily back in Ultra DMA Mode 5, and my system was much zippier.

Another good read on this subject: http://www.michna.com/kb/WxDMA.htm