One of our readers named Mike submitted the following problem to us:

Basically, I seem to have an issue where my sound will skip/distort any time my processor is busy. And it doesn’t have to be anything significant, this can happen just when I’m opening up Firefox. Now, I can understand something like this happening on an old PC, but I don’t see why this would be a problem given the specs of this build. It doesn’t matter what program is playing an audio file, and the skipping/distorting is more pronounced if I have multiple programs/more memory-intensive programs running. I have tried a clean install, wiping everything and starting over, to no avail. As far as I can tell all of the parts I have work fine, but I still have this sound issue.

This problem is actually somewhat common. I have experienced it in the past myself. The usual solution is anything but obvious, though.

The short answer is that the problem lies in the modes specified for your primary and secondary IDE controllers. You usually have a hard drive and an optical drive. You need to have the modes set to DMA and not PIO.

First an explanation of the two:

  • DMA (Direct memory access) mode is a high performance mode for transferring data to and from devices, in particular, to CD and DVD burner devices. DMA mode allows the processor to transfer large pieces of data with very little software overhead – therefore requiring low CPU utilization. In this mode, high speed burning can be performed in background with other programs running.
  • Short for Programmed Input/Output, a method of transferring data between two devices that uses the computer’s main processor as part of the data path.

We need to be using DMA mode so that the processor can work on things like proper sound output and less on simple data transfer.

Windows will revert to PIO mode on the drives if it has any problems using DMA. And if the problem persists, Windows will just make it permanent and will continue to use PIO mode even if you specify DMA. So, there are two ways to tackle it.

Go to your device manager in the Control Panel, find your primary IDE channel, right-click and select Properties. Go to the Advanced tab and find the device you are configuring. Make sure “DMA if available” is selected. If you have anything connected to your secondary IDE channel, do the same for that one. You will need to reboot Windows for the change to take effect.

If that doesn’t fix it, it may be because Windows is forcing PIO. In this case, you actually want to uninstall the controller from the device manager. It may seem overkill, but on reboot, Windows will simply re-detect the controller and set it up.