Re: I/O scheduling on block devices

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Dec 18, 2012 at 04:46:47PM -0500, Javier Guerra Giraldez wrote:
> On Tue, Dec 18, 2012 at 4:41 PM, Andrew Holway <a.holway@xxxxxxxxxxxx> wrote:
> > How should I set up io scheduling with this configuration. Performance is not so great and I have a feeling that all of the io schedulers in my VMs and the ones on my host are not having a nice party together.
> 
> most external storage units do their own io scheduling with sizeable
> amounts of buffers and cache, so any optimization done by the hosts
> would be nullified before reaching the media.
> 
> also, a scheduler in each host ignores what's happening on the other
> hosts, so their worldview is incomplete at best.
> 
> therefore, the best you could aim is to minimize latency; that is,
> send each command out to the storage ASAP and let it sort it out.  for
> that, usually the best is to use the 'noop' scheduler.

There's no one-size-fits-all answer.  You need to benchmark your own
configuration and workload.

Javier's suggestions are optimal on some configurations and workloads,
but here's something to show there's no one-size-fits-all solution:

When you use "noop" in the guest only trivial request merging is done.
This means more guest<->host switches because no attempt is made to wait
a little to batch up requests.  That burns up CPU and can affect the
performance of the system as a whole.

Here is a link that gives an overview of the I/O schedulers and options:
https://access.redhat.com/knowledge/docs/en-US/Red_Hat_Enterprise_Linux/6/html-single/Performance_Tuning_Guide/index.html#main-io

Stefan
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux