Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Is it possible to set an arbitrary delay for I/O operations?

I would like to learn how do iowait and disk %util impact the performance. There are a lot of tools to stress the disk (bonnie++ etc.) but I'm looking for a way to introduce a delay like the tc (traffic control) tool does for network. It is possible to disable some optimizations with hdparm tool, like set AAM to quiet or disable DMA and switch to PIO mode - which are only a indirect way to decrease I/O.

share|improve this question
Run your actual workload. – Michael Hampton Jul 15 '13 at 21:28

With fio and blktrace, you can replay an I/O trace. What type of disruption are you trying to simulate?

If the delays you wish to induce are from an existing production system, you can use that as the basis for your trace.

share|improve this answer
sounds interesting! I'll try them out and came back with a feedback. – user156233 Jul 15 '13 at 23:35
Good luck. Does this seem like it could do what you're asking for? – ewwhite Jul 15 '13 at 23:36
I want to learn more about I/O, for example which performance impact will be added during high I/O caused by other VM guests on the same VM. How await, iowait and %util correlate etc. – user156233 Jul 15 '13 at 23:43

You can try using dm_delay to simulate delayed IO for a device. Here is some document you might need: and here are some useful links for iostats: iostat - How does %util affect %idle and %iowait

share|improve this answer
Whilst this may theoretically answer the question, it would be preferable to include the essential parts of the answer here, and provide the link for reference. – slm Aug 21 '13 at 0:26

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.