Difference between revisions of "CPU Fair scheduler"

From OpenVZ Virtuozzo Containers Wiki
Jump to: navigation, search
(added category)
 
(2 intermediate revisions by one other user not shown)
Line 3: Line 3:
 
It is a two-level implementation of [[fair-share scheduling]] strategy.
 
It is a two-level implementation of [[fair-share scheduling]] strategy.
  
On the first level the scheduler decides which VE is give the CPU time slice to, based on per-VE <code>cpuunits</code> values. On the second level the standard Linux scheduler decides which process to run in that container, using standard Linux process priorities and such.
+
On the first level the scheduler decides which VE to give CPU time slice to, based on per-VE <code>cpuunits</code> values. On the second level the standard Linux scheduler decides which process to run in that container, using standard Linux process priorities and such.
  
OpenVZ administrator can set up different values of <code>cpuunits</code> for different containers, and the CPU time will be given to those proportionally.
+
The OpenVZ administrator can set up different values of <code>cpuunits</code> for different containers, and the CPU time will be given to those proportionally.
  
 
Also there is a way to limit CPU time, e.g. say that this container is limited to, say, 10% of CPU time available.  
 
Also there is a way to limit CPU time, e.g. say that this container is limited to, say, 10% of CPU time available.  
Line 13: Line 13:
 
== Monitoring ==
 
== Monitoring ==
 
The scheduler can be monitored by using the <code>/proc/vz/[[vestat]]</code> file.
 
The scheduler can be monitored by using the <code>/proc/vz/[[vestat]]</code> file.
 +
 +
[[Category:Definitions‏‎]]

Latest revision as of 06:30, 7 June 2015

The Fair scheduler distributes CPU resources among the VEs, and controls CPU resource management.

It is a two-level implementation of fair-share scheduling strategy.

On the first level the scheduler decides which VE to give CPU time slice to, based on per-VE cpuunits values. On the second level the standard Linux scheduler decides which process to run in that container, using standard Linux process priorities and such.

The OpenVZ administrator can set up different values of cpuunits for different containers, and the CPU time will be given to those proportionally.

Also there is a way to limit CPU time, e.g. say that this container is limited to, say, 10% of CPU time available.

...Stay tuned for more info...

Monitoring[edit]

The scheduler can be monitored by using the /proc/vz/vestat file.