SPEED UP YOUR HARD DRIVE!

Many Linux distributions are installed in such a way that the 32-bit input/output (I/O) and DMA capabilities of today's UltraATA/66 hard drives are not fully exploited. By reconfiguring your system, you can get much better performance.

To find out if your hard drive is configured for 16-bit I/O, switch to superuser, type hdparm -c followed by a space and the name of the drive (such as /dev/hdc), and press [Enter]. If you see the following, your system is configured to access this drive in 16-bit mode:

/dev/hdc

I/O support = 0 (default 16-bit)

Use the following command to test your disk's speed: hdparm -Tt /dev/hdc (substitute your drive's name for /dev/hdc); you'll see the data transfer rate (in MB/sec) for buffer cache and buffered disk reads.

To turn on 32-bit I/O and DMA support, type the following and press [Enter] (use your drive's device name):

hdparm -c 1 -d 1 /dev/hdc

If the command succeeds, you'll see the message:

/dev/had:

setting 32-bit I/O support flag to 1

setting using_dma to 1 (on)

I/O support = 1 (32-bit)

using_dma = 1 (on)

Try the hdparm -Tt /dev/hdc command to see how much improvement you've obtained. If you're happy with the result, repeat this command for additional drives, if any.

To commit the successful settings, use the same command with the -k option, as in the following example:

hdparm -c 1 -d 1 -k 1 /dev/hdc

Because this command is lost when you reboot Linux, you may wish to put this command into a system initialization script, such as /etc/rc.d/rc.local. If you modify this script, be careful that you don't erase any of the existing code!

NOTE: Be aware that, on some systems, modifying the hard drive settings can result in data corruption! This is especially true if you attempt to use these commands on older hardware. Do not proceed unless you have a verified backup of all valuable data. As always, modify system settings at your own risk.