aboutsummaryrefslogtreecommitdiffstats
path: root/docs/misc/sedf_scheduler_mini-HOWTO.txt
blob: 6742867ac5124c2d49c8f5d81b57a8f3b9acd510 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
sEDF scheduler
--------------
Author:
   Stephan.Diestelhorst@{cl.cam.ac.uk, inf.tu-dresden.de}
   
Overview:
  This scheduler provides weighted CPU sharing in an intuitive way and
  uses realtime-algorithms to ensure time guarantees.

Usage:
   -add "sched=sedf" on Xen's boot command-line
   -create domains as usual
   -use "xm sched-sedf <dom-id> <period> <slice> <latency-hint> <extra> <weight>"
    Where:
      -period/slice are the normal EDF scheduling parameters in nanosecs
      -latency-hint is the scaled period in case the domain is doing heavy I/O
         (unused by the currently compiled version)
      -extra is a flag (0/1), which controls whether the domain can run in
       extra-time
      -weight is mutually exclusive with period/slice and specifies another
       way of setting a domains cpu slice

Examples:
 normal EDF (20ms/5ms):
  xm sched-sedf <dom-id> 20000000 5000000 0 0 0
  
 best-effort domains (i.e. non-realtime):
  xm sched-sedf <dom-id> 20000000 0 0 1 0
 
 normal EDF (20ms/5ms) + share of extra-time:
  xm sched-sedf <dom-id> 20000000 5000000 0 1 0
  
 4 domains with weights 2:3:4:2
  xm sched-sedf <d1> 0 0 0 0 2
  xm sched-sedf <d2> 0 0 0 0 3
  xm sched-sedf <d3> 0 0 0 0 4
  xm sched-sedf <d4> 0 0 0 0 2
  
 1 fully-specified (10ms/3ms) domain, 3 other domains share
 available rest in 2:7:3 ratio:
  xm sched-sedf <d1> 10000000 3000000 0 0 0
  xm sched-sedf <d2> 0 0 0 0 2
  xm sched-sedf <d3> 0 0 0 0 7
  xm sched-sedf <d4> 0 0 0 0 3