[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH] Make credit2 the default scheduler
Credit2 was declared "supported" in 4.8, and as of 4.10 had two other critical features implemented (soft affinity / NUMA and caps). Why change the default? The code is better: more predictable, less jitter, easier to determine how modifications will affect overall behavior, easier in the future to make load-balancing behavior more subtle (e.g., taking into account the cost of powering up extra cores, &c). Overall performance compared to Credit1 is somewhat of a mixed bag. Unfortunately most of what I have are tests using XenServer's internal perf testing system, so I can't share the raw data (via links anyway). Here is a summary of data from an internal e-mail Dario sent in the past: * DVDbench: On underloaded systems, credit2 outperformed credit1 by about 4%. On overloaded systems, credit2 underperformed by about 3%. * On a range of tests (unixbench, lmbench, &c), credit and credit2 perform within 5% of each other (up and down). * Credit2 fairly consistently beats credit for TCP-style workloads. * Credit2 is sometimes equal to, sometimes 5-15% worse than, credit for synthetic CPU workloads (e.g., Dhrystone). * On LoginVSI, credit2 fairly consistently outperforms credit by about 10%. Credit2, like credit, has a number of workloads / setups for which performance could be improved. Personally I think networking and partially-loaded systems is going to be more representative of what Xen is actually used for; so I think credit2 is on the whole the better scheduler to use by default. And in any case, making those improvements on credit2 will be easier than on credit. Signed-off-by: George Dunlap <george.dunlap@xxxxxxxxxx> --- CC: Ian Jackson <ian.jackson@xxxxxxxxxx> CC: Wei Liu <wei.liu2@xxxxxxxxxx> CC: Andrew Cooper <andrew.cooper3@xxxxxxxxxx> CC: Jan Beulich <jbeulich@xxxxxxxx> CC: Tim Deegan <tim@xxxxxxx> CC: Stefano Stabellini <sstabellini@xxxxxxxxxx> CC: Konrad Wilk <konrad.wilk@xxxxxxxxxx> CC: Dario Faggioli <dfaggioli@xxxxxxxx> --- xen/common/Kconfig | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/xen/common/Kconfig b/xen/common/Kconfig index 1a6d6281c1..3a1c585d25 100644 --- a/xen/common/Kconfig +++ b/xen/common/Kconfig @@ -215,7 +215,7 @@ config SCHED_NULL choice prompt "Default Scheduler?" - default SCHED_CREDIT_DEFAULT + default SCHED_CREDIT2_DEFAULT config SCHED_CREDIT_DEFAULT bool "Credit Scheduler" if SCHED_CREDIT @@ -236,7 +236,7 @@ config SCHED_DEFAULT default "rtds" if SCHED_RTDS_DEFAULT default "arinc653" if SCHED_ARINC653_DEFAULT default "null" if SCHED_NULL_DEFAULT - default "credit" + default "credit2" endmenu -- 2.18.0 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |