Multi-Core Scaling In A KVM Virtualized Environment

Written by Michael Larabel in Processors on 15 December 2010 at 10:39 AM EST. Page 2 of 5. 18 Comments.

When starting with the Apache web-server benchmark, the KVM virtualized guest does perform very poorly against the system's host performance. The performance between the two instances were close when only one CPU core was enabled, while the system's host performance went up linearly until hitting four cores and from there began to flatten out in this web benchmark. The KVM instance meanwhile was flat the entire time and did no scaling at all with the CPU core count.

Our Apache web-server benchmark was a bit shocking with the KVM guest not changing at all, but when moving onto other tests it was a different story. With the timed Apache compilation, the guest was expectedly slower than the host was, but it scaled at each step of the way to the same abilities as the host operating system. This is an example of the virtualization scaling performance being done well.

C-Ray is one of the test profiles where our earlier virtualization tests have shown its performance to be nearly at the same level as the host. Today's tests show that not only this ray-tracing software runs the same as the Linux host with one core enabled or with all cores enabled, but at each step of the way too. There is no overhead of the virtualized guest due to the number of "virtual CPUs" within the KVM guest.

CLOMP is one of the newest test profiles to OpenBenchmarking.org / Phoronix Test Suite 3.0 and it is a government test looking at the OpenMP efficiency across multiple cores. The CLOMP test shows the host and guest speeding up the same up until four cores are hit. Once enabling six or twelve cores, the virtualized guest was much less efficient than the host.


Related Articles