Difference between revisions of "I/O priorities"

From OpenVZ Virtuozzo Containers Wiki
Jump to: navigation, search
m (Kir moved page I/O priorities for containers to I/O priorities: simplify)
(add link to i/o limits; added into howto cat)
Line 12: Line 12:
  
 
== See also ==
 
== See also ==
 
+
* [[I/O limits]]
 
* [[IO accounting]]
 
* [[IO accounting]]
  
 
[[Category: Resource management]]
 
[[Category: Resource management]]
 +
[[Category: HOWTO]]

Revision as of 11:12, 13 December 2013

The I/O priorities feature is implemented in OpenVZ since kernel 2.6.18-028stable021, vzctl 3.0.16. This feature allows to assign I/O priority to any container. Priority range is 0-7. The more priority a container has, the more time for using block devices this container will obtain. This feature is based on CFQ I/O scheduler, so this scheduler should be used for block device in question. Default I/O priority is 4. Examples of using:

vzctl set 101 --ioprio 0 --save
vzctl set 101 --ioprio 7 --save

The higher the value you use, the more I/O time your container will receive.

The mapping from priority to time is the following: if 0 prio corresponds to time slice t, than 8 prio corresponds to time slice 2 * t. Default time slice value is HZ/2. The main criteria for fairness at the moment is that if you set I/O prio of CT 1 to p1 and I/O prio of CT 2 to p2, and p1 > p2 then CT 1 should do more I/O than CT 2. In simple form the priorities are relative with the higher priority getting more I/O time.


See also