Page 2 of 3 FirstFirst 123 LastLast
Results 11 to 20 of 22

Thread: VirtualBox Is Still Running Slower Than QEMU-KVM

  1. #11
    Join Date
    Sep 2013
    Posts
    24

    Default

    I wonder how the benchmarks would be affected by lowering the number of virtual cores assigned to the VMs. At least with VMware products, especially hosted ones, it's often recommended to never set the number of virtual cores equal to or more than the number of physical cores (ie. not counting hyper-threading logical cores). Some (many?) workloads supposedly get better performance by doing this.

  2. #12
    Join Date
    Apr 2009
    Posts
    31

    Default

    >>HPC Challenge wouldn't build under QEMU-KVM since the reported CPU string was unrecognized as "QEMU Virtual 1.7.0"

    Just use -cpu host as cpu model. If not, you don't use most cpu features (sse2,ss3,...). It should give you a big difference if benchmark use theses cpu features.



    (It could be great to have the full qemu command detail, to see which options are used for cpu, disks,....)

  3. #13
    Join Date
    Sep 2008
    Location
    Vilnius, Lithuania
    Posts
    2,394

    Default

    Quote Originally Posted by vick View Post
    I wonder how the benchmarks would be affected by lowering the number of virtual cores assigned to the VMs. At least with VMware products, especially hosted ones, it's often recommended to never set the number of virtual cores equal to or more than the number of physical cores (ie. not counting hyper-threading logical cores). Some (many?) workloads supposedly get better performance by doing this.
    Leaving one core unassigned means it can be dedicated to the host, and if the guest decides to eat all your resources, you will still be able to stop the machine instead of doing a hard reboot. I think that lowers the performance of the guest, but gives you more reliability and more performance for the host.

  4. #14
    Join Date
    Feb 2008
    Location
    Linuxland
    Posts
    4,722

    Default

    Quote Originally Posted by GreatEmerald View Post
    Leaving one core unassigned means it can be dedicated to the host, and if the guest decides to eat all your resources, you will still be able to stop the machine instead of doing a hard reboot. I think that lowers the performance of the guest, but gives you more reliability and more performance for the host.
    Have you had that happen? Qemu "cores" are simply threads to the host, and the host can distribute them as it wills.

  5. #15
    Join Date
    Sep 2008
    Location
    Vilnius, Lithuania
    Posts
    2,394

    Default

    Quote Originally Posted by curaga View Post
    Have you had that happen? Qemu "cores" are simply threads to the host, and the host can distribute them as it wills.
    Yes, I had it happen, but on VirtualBox (I don't use QEMU much).

  6. #16
    Join Date
    Sep 2013
    Posts
    24

    Default

    Quote Originally Posted by GreatEmerald View Post
    Leaving one core unassigned means it can be dedicated to the host, and if the guest decides to eat all your resources, you will still be able to stop the machine instead of doing a hard reboot. I think that lowers the performance of the guest, but gives you more reliability and more performance for the host.
    All I know, some of my tasks ran quicker when I set the number of cores to less than the number of physical cores and slowed when set to equal or more (ie. 8 virtual cores on a 4 core + HT CPU). Several users at VMware's forums seem to have similar informally tested experiences.

    It'd be nice if Phoronix tested this less cores sometimes gives better performance even on an idle host advice (sometimes even given by VMware engineers themselves) commonly given to VMware users in a more formal testing environment.
    Last edited by vick; 01-10-2014 at 11:18 AM.

  7. #17
    Join Date
    Aug 2013
    Posts
    80

    Default

    I've also read from VMware's official support pages and community forums that it's expected to lose performance when assigning virtual cores to be equal to or more than the number of physical cores on hosted VMs.

    Even VirtualBox recommends something similar: https://www.virtualbox.org/manual/ch...ings-processor
    You should not, however, configure virtual machines to use more CPU cores than you have available physically (real cores, no hyperthreads).

  8. #18
    Join Date
    Mar 2011
    Posts
    351

    Default

    Why is everybody wondering about the slowdown with equal or more cores? The emulation itself needs CPU power, too, so if the guest tries to eat all up a slowdown is to be expected.

  9. #19
    Join Date
    Sep 2013
    Posts
    24

    Default

    Quote Originally Posted by TAXI View Post
    Why is everybody wondering about the slowdown with equal or more cores? The emulation itself needs CPU power, too, so if the guest tries to eat all up a slowdown is to be expected.
    Because Michael is setting up the VMs with 12 cores on a 6 core + HT CPU for a virtualization/bare metal comparison. If doing so actually reduces performance then the testing should be changed by lowering the number of cores or add additional VMs with different numbers of cores to the comparison.

    I'm questioning if these tests are accurate comparisons at all. It's like setting up the tests so that VMs specifically look bad.
    Last edited by vick; 01-11-2014 at 12:19 PM.

  10. #20
    Join Date
    Aug 2013
    Posts
    80

    Default

    Quote Originally Posted by TAXI View Post
    Why is everybody wondering about the slowdown with equal or more cores? The emulation itself needs CPU power, too, so if the guest tries to eat all up a slowdown is to be expected.
    That's why it's being discused. The benchmarks are comparing VM and bare metal performance where the VMs are possibly configured to lose by a wider margin than in real world configurations.

    I also would like VM testing changed to add additional test points where they're configured with 1 core, 2 or more but less than the number of physical cores, equal to the number of physical cores and equal to the number of logical cores (ie. include hyper-threading). It could be that single-threaded performance in a 1 core configuration be higher than in a multi-core one. It would be nice to know this if a VM's single-threaded workload is more important than its multi-threaded ones.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •