[RFC][PATCH] KVM: APPLES can improve the performance of applications and virtualized systems by up to 49%

From: Weiwei Jia
Date: Sat May 12 2018 - 04:27:21 EST


Dear all,

Recently, we made a few improvements on effectively utilizing Pause
Loop Exiting (PLE) support for higher throughput on virtualized
systems. Basically, it solves two problems: 1) how to adjust
PLE_Window; 2) how to select virtual CPUs to schedule on VM_EXITs
caused by PLE. Our tests with standard benchmarks show that the
approach can improve performance by up to 49%. The approach shows
promising performance and is easy to implement. We think that it would
be wonderful if Linux/KVM and XEN can consider the approach.

We already have a prototype implementation based on KVM (Linux Kernel
3.19.8). Our patch for Linux Kernel 3.19.8 and the paper describing
our idea are available in Github repository [1][2][3]. We are pleased
to revise our patch in order to merge it into Linux/KVM and XEN. We
hope that you can test and adopt our approach/techniques. We are
pleased to get some comments/suggestions on the approach and on how
the idea can be adopted/tested by Linux/KVM and XEN. Thank you.

[1] APPLES paper: https://github.com/sysmen/apples/tree/master/paper
[2] APPLES patch:
https://github.com/sysmen/apples/blob/master/patches/3.19.8-APPLES.patch
[3] APPLES patch README:
https://github.com/sysmen/apples/blob/master/patches/README.txt

Best Regards,
Sysmen Research Group