Problem solve Get help with specific problems with your technologies, process and projects.

Detecting Disk I/O Problems

If your system spends a lot of time idle, even under heavy load, you have the right to suspect disk I/O problems....

Remember that memory problems and I/O problems are often related. Here are some steps that will help to confirm that your system is suffering disk problems:

  • Run iostat 5 (sar-d, if your system supports it). Compare that result with your "healthy system" data. Is disk activity much higher than normal?
  • Is disk activity distributed fairly among the system's disks?
  • If not, are the most active disks also the fastest disks?
  • Run sadp (some System V, but not all) to get a seek histogram.
  • Is activity concentrated in one area of the disk (good), spread evenly across the disk (tolerable), or in two well-defined peaks at opposite ends (bad)?
  • Are you using NFS? Are users reporting slow file access working locally, or are they accessing a remote filesystem? If they are using remote files, look at your network situation. You don't have local disk I/O problems.
  • Look at your memory statistics by running vmstat 5 (sar -rwpg). If your system is paging or swapping consistently, you have memory problems, and they are undoubtedly making disk I/O worse than it would be otherwise. Attack your memory problems first.
  • If any of these tests indicates a problem, try these approaches:
  • Reorganize your filesystems and disks to distribute I/O activity as evenly as possible.
  • Use your fastest disk drive and controller for your root filesystem - this will almost certainly have the heaviest activity. Alternatively, if single-file throughput is important, put performance-critical files into one filesystem and use the fastest drive for that filesystem.
  • Put performance-critical files on a filesystem with a large block size: 16 KB or 32 KB for BSD, 2 KB for System V.
  • For System V.4, use UFS (BSD-style) filesystems instead of the System V (S5) filesystem.
  • Increase the size of the buffer cache by increasing BUFPAGES (BSD), NBUF (V.3), or BUFFERS (XENIX, V.2). This may hurt your system's memory performance.
  • Rebuild your filesystems periodically to eliminate fragmentation. System V.4 users can use dcopy; other System V and BSD implementations should do a backup, build a new filesystem, and restore.
  • dcopy has some options to concentrate heavily used files at the beginning of the filesystems. If sadp indicates that you have a bad seek pattern (two distinct peaks, many long seeks), try using dcopy to fix the situation.

Source: O'Reilly - System Performance Tuning - Help for UNIX System Administrators

This was last published in June 2000

Dig Deeper on Storage optimization

Start the conversation

Send me notifications when other members comment.

By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States. Privacy

Please create a username to comment.