]> xenbits.xensource.com Git - people/royger/xen.git/commitdiff
credit: change default timeslice to 5ms
authorGeorge Dunlap <george.dunlap@eu.citrix.com>
Thu, 6 Mar 2014 11:19:39 +0000 (12:19 +0100)
committerJan Beulich <jbeulich@suse.com>
Thu, 6 Mar 2014 11:19:39 +0000 (12:19 +0100)
The 30ms timeslice was chosen nearly a decade ago now, with cpu
"burning" workloads in mind.  In the mean time, processors have gotten
faster and VMEXITs have gotten faster.  A timeslice of 30ms has a
major cost when running latency-sensitive workloads like network or
audio streaming: getting caught behind just one or two other VMs can
introduce a processing delay of up to 60ms, and the "round-robin"
nature of the credit scheduler means this delay may be introduced
every time the VM yields for periods of time.

The XenServer performance team at Citrix have done extensive testing
with various timeslices, including 30ms, 10ms, 5ms, and 2ms.  None of
the workloads exhibited any performance degradation with a 5ms
timeslice.

Signed-off-by: George Dunlap <george.dunlap@eu.citrix.com>
Reviewed-by: Dario Faggioli <dario.faggioli@citrix.com>
Acked-by: Tim Deegan <tim@xen.org>
xen/common/sched_credit.c

index db5512e3ed0d14d22bb080fb7e969dacd74554f0..61553d977e2b8fd5f72772934317cf11e270c7a4 100644 (file)
@@ -29,9 +29,9 @@
  * Basic constants
  */
 #define CSCHED_DEFAULT_WEIGHT       256
-#define CSCHED_TICKS_PER_TSLICE     3
-/* Default timeslice: 30ms */
-#define CSCHED_DEFAULT_TSLICE_MS    30
+#define CSCHED_TICKS_PER_TSLICE     1
+/* Default timeslice: 5ms */
+#define CSCHED_DEFAULT_TSLICE_MS    5
 #define CSCHED_CREDITS_PER_MSEC     10