Features/DiskIOLimits: Difference between revisions
(Created page with '== Summary == Provide interfaces to throttle disk I/O independent of the underlying storage (image file, LVM, NFS, Ceph). == Owners == * '''Name:''' Zhi Yong WU * '''Email:'''…') |
No edit summary |
||
(4 intermediate revisions by 2 users not shown) | |||
Line 5: | Line 5: | ||
== Owners == | == Owners == | ||
* '''Name:''' Zhi Yong | * '''Name:''' Zhi Yong Wu | ||
* '''Email:''' | * '''Email:''' wuzhy@linux.vnet.ibm.com | ||
== Status == | |||
Patches under review on the mailing list. | |||
Development tree: http://repo.or.cz/w/qemu/qemu-dev-zwu.git/shortlog/refs/heads/io_limits_latest | |||
== Background == | == Background == | ||
Line 26: | Line 25: | ||
* [[Features/DiskIOLimits/Requirements|Requirements]] | * [[Features/DiskIOLimits/Requirements|Requirements]] | ||
* [[Features/DiskIOLimits/TestCases|Test cases]] | * [[Features/DiskIOLimits/TestCases|Test cases]] | ||
[[Category:Completed feature pages]] |
Latest revision as of 14:54, 11 October 2016
Summary
Provide interfaces to throttle disk I/O independent of the underlying storage (image file, LVM, NFS, Ceph).
Owners
- Name: Zhi Yong Wu
- Email: wuzhy@linux.vnet.ibm.com
Status
Patches under review on the mailing list.
Development tree: http://repo.or.cz/w/qemu/qemu-dev-zwu.git/shortlog/refs/heads/io_limits_latest
Background
When several instances of QEMU are running they can interfere with system performance through excessive disk I/O. Sometimes it is desirable to limit disk I/O in order to keep QEMU from affecting other applications or instances.
The availability of disk I/O throttling depends on the underlying storage (image file, LVM, NFS, Ceph). On Linux the cgroups blkio-controller supports I/O throttling on block devices but is a relatively recent feature. More importantly, there is no single mechanism for disk I/O throttling across all underlying storage types and for some types there is no way to throttle at all.
The disk I/O limits feature introduces QEMU block layer I/O limits together with command-line and QMP interfaces for configuring limits. This allows I/O limits to be imposed across all underlying storage types using a single interface.