SGI Techpubs Library

Linux  »  Books  »  Developer  »  
Linux Application Tuning Guide
(document number: 007-4639-010 / published: 2009-01-30)    table of contents  |  additional info  |  download
find in page

Chapter 8. I/O Tuning

This chapter describes tuning information that you can use to improve I/O throughput and latency.

Layout of Filesystems and XVM for Multiple RAIDs

There can be latency spikes in response from a RAID and such a spikes can in effect slow down all of the RAIDs as one I/O completion waits for all of the striped pieces to complete.

These latency spikes impact on throughput may be to stall all the I/O or to delay a few I/Os while others continue. It depends on how the I/O is striped across the devices. If the volumes are constructed as stripes to span all devices, and the I/Os are sized to be full stripes, the I/Os will stall, since every I/O has to touch every device. If the I/Os can be completed by touching a subset of the devices, then those that do not touch a high latency device can continue at full speed, while the stalled I/Os can complete and catch up later.

In large storage configurations, it is possible to lay out the volumes to maximize the opportunity for the I/Os to proceed in parallel, masking most of the effect of a few instances of high latency.

There are at least three classes of events that cause high latency I/O operations, as follows:

  • Transient disk delays - one disk pauses

  • Slow disks

  • Transient RAID controller delays

The first two events affect a single logical unit number (LUN). The third event affects all the LUNs on a controller. The first and third events appear to happen at random. The second event is repeatable.

Linux Application Tuning Guide
(document number: 007-4639-010 / published: 2009-01-30)    table of contents  |  additional info  |  download

    Front Matter
    New Features in This Manual
    About This Document
    Chapter 1. System Overview
    Chapter 2. The SGI Compiling Environment
    Chapter 3. Performance Analysis and Debugging
    Chapter 4. Monitoring Tools
    Chapter 5. Data Placement Tools
    Chapter 6. Performance Tuning
    Chapter 7. Flexible File I/O
    Chapter 8. I/O Tuning
    Chapter 9. Suggested Shortcuts and Workarounds
    Index


home/search | what's new | help