Monday, January 14, 2013

Windows: Choppy Audio and Poor Performance

A computer system running Windows XP (yes, it's that old) had been running fine for several years, when all of a sudden it started feeling really sluggish, and most annoying, the audio playback became very burbly. The audio buffers were not getting filled as fast as the sound card emptied them. As a result, the sound card was looping sporadically on the same buffer. This happened mainly when disk activity was occurring.

After trying several time-consuming and pointless exercises to fix the problem, I happened on the solution more or less by accident:

You can see that the Current Transfer Mode is Ultra DMA Mode 5. This is what you want. What I found was PIO Mode. PIO stands for "Programmed I/O", and it is the slowest transfer mode, which requires the processor to stop what it's doing (like playing audio), and move the data from the drive controller to memory and vice-versa. DMA stands for "Direct Memory Access", which allows the processor to set up the transfer, and then allows the DMA controller to actually move the data from the drive controller to memory and vice-versa, so the processor can keep working on other things.

When your disk drive performance suddenly seems sluggish, and especially if multimedia performance becomes jerky and choppy, check your IDE channel properties, and make sure it's running in DMA mode. In Windows XP (and on Vista and Windows 7 as well), select Computer Management/Device Manager, and expand IDE ATA/ATAPI controllers, and make sure they're running in DMA mode.

How does the controller get into PIO mode in the first place? Several reasons. The most common one is that there have been too many drive read errors, and after several of these, Windows reverts to a "fail safe" mode. Unfortunately, it doesn't alert you about it. So yes, you might have a disk drive failure looming. Other reasons include a faulty or improperly plugged drive cable or power cable. After you have verified that everything is connected properly, and maybe run chkdsk, use Device Manager to uninstall the lobotomized controller and then restart Windows. Windows will re-install the controller automatically. In the process, it should revert to DMA mode if the drive is responding properly.

No comments :

Post a Comment