Announcement

Collapse
No announcement yet.

Linux KVM vs. VirtualBox 4.0 Virtualization Benchmarks

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • #16
    Originally posted by liam View Post
    What, no SPICE? I know that you only use "default" configuration but you really should take advantage of Virtio. The previous mentioned items would give you near native nic and 2d accel (3d is coming).
    SPICE != virtio.
    Plus, as far as I could see, there were no graphical benchmarks (2D or 3D) so SPICE is irrelevant.

    ... Never the less, I do agree that virtio should have been added to the mix.

    As the OP's post about disabling HT, I couldn't disagree more.
    With 4 VM's, each with 2 till 8 vCPU's and 2-4GB RAM (Total vCPU's: 16, total memory: 10GB), I've seen noticeable performance increase on my Xeon 5530 workstation (8 cores, 16 threads, 12GB).
    While I didn't bother to benchmark the setup, subjectively, w/ HT disabled, the machine would literally crawl to halt, while on the other hand, w/ HT enabled, I could continue working more-or-less as usual on the host.

    Intel's Core7 / Xeon x5/x6xx HT implementation is -far- better than the P4 implementation.

    - Gilboa
    DEV: Intel S2600C0, 2xE52658V2, 32GB, 4x2TB + 2x3TB, GTX780, F21/x86_64, Dell U2711.
    SRV: Intel S5520SC, 2xX5680, 36GB, 4x2TB, GTX550, F21/x86_64, Dell U2412..
    BACK: Tyan Tempest i5400XT, 2xE5335, 8GB, 3x1.5TB, 9800GTX, F21/x86-64.
    LAP: ASUS N56VJ, i7-3630QM, 16GB, 1TB, 635M, F21/x86_64.

    Comment


    • #17
      I use KVM heavily and have spent a lot of time learning how to get the best performance.

      Originally posted by gilboa View Post
      SPICE != virtio.
      Plus, as far as I could see, there were no graphical benchmarks (2D or 3D) so SPICE is irrelevant.

      Well SPICE is virtio, more or less. In the way that virtio is paravirtualized drivers. That's just the linux kernel brand name for it. It depends on paravirtualized graphics drivers so it's certainly along the same vein.

      From the point of view of the Guest OS the Spice video stuff happens in the 'hardware' of the VM. It's one of the things that makes it special.

      For my personal use I just use RDesktop for Windows, and X over SSH for Linux. With newer versions of GDM you can have 'secure log in' which you launch your session remotely over SSH.

      You have to configure SSH to use arcfour encryption (low overhead, high performance) and disable compression (reduces latency and overhead) to get the best performance.

      But with things like AIGLX and whatnot you can easily get 2D and 3D acceleration that way for Linux VM session. Use the 'switch user' function to have multiple GDM logins.

      ... Never the less, I do agree that virtio should have been added to the mix.
      Virtio is critical to performance for networks. Other Virtio drivers like balloon driver is important for things like memory management.

      Blk driver _can_ help some with I/O.

      But with disk I/O your will see much improved performance with different cache settings.

      For example if you are using Windows on file-back storage you will get best results with 'cache=writeback' option for your disk drives.

      If your using Linux with Virtio drivers and are using LVM logical volumes, dedicated driver, or other raw dedicated block device for your virtual drive then you will want to use 'cache=none'.

      The default for KVM is 'cache=writethrough' which is a decent all around compromise between performance and data security.

      Also new Linux features like KSM will merge memory between multiple VM instances of hte same OS so you can run more VMs then your system's memory can otherwise support. However KSM does add CPU overhead so unless you have multiple OSes of the same type running you'll want to disable it.


      For Linux users there really is no comparison.

      Virtualbox is friendlier (and this matters) for the desktop and will offer better graphical performance. However KVM is worlds and away more sophisticated, better performance, and much more complete VM solution. It requires more expertise to use properly though.

      For regular users on the desktop VirtualBox is probably the way to go, but if your using something for serious work then KVM is the answer.

      Your going to see it start to displace Vmware ESX more and more for enterprise solutions for companies that are heavily invested in Linux.

      Comment


      • #18
        Configuring your network is important. There are a lot of solutions and using bridge is fairly fast, but it is not the fastest. Macvlan will usually offer better performance.

        Comment


        • #19
          Read that EULA!

          Originally posted by birdie View Post
          Besides it's kinda sad you haven't included VMWare WorkStation/Player 7.1.3.
          What's sad is that you did not read the EULAs that you agreed to:

          VMware Player and Workstation EULA:

          "You may use the Software to conduct internal performance testing and benchmarking studies, the results of which you (and not unauthorized third parties) may publish or publicly disseminate; provided that VMware has reviewed and approved of the methodology, assumptions and other parameters of the study."

          Comment


          • #20
            I would like to know more about the loopback test. Where did the data come from and where did it go to? Reason for asking is that the same thing that caused virtualbox to cheat sqlite and other disk tests could have been affecting the loopback test depending on the way the test worked.

            In other words, the only place where virtualbox had a commanding lead over kvm that was not NECESSARILY a result of cheating, may not be trustworthy.

            Comment


            • #21
              Originally posted by drag View Post
              I use KVM heavily and have spent a lot of time learning how to get the best performance.




              Well SPICE is virtio, more or less. In the way that virtio is paravirtualized drivers. That's just the linux kernel brand name for it. It depends on paravirtualized graphics drivers so it's certainly along the same vein.

              From the point of view of the Guest OS the Spice video stuff happens in the 'hardware' of the VM. It's one of the things that makes it special.

              For my personal use I just use RDesktop for Windows, and X over SSH for Linux. With newer versions of GDM you can have 'secure log in' which you launch your session remotely over SSH.

              You have to configure SSH to use arcfour encryption (low overhead, high performance) and disable compression (reduces latency and overhead) to get the best performance.

              But with things like AIGLX and whatnot you can easily get 2D and 3D acceleration that way for Linux VM session. Use the 'switch user' function to have multiple GDM logins.



              Virtio is critical to performance for networks. Other Virtio drivers like balloon driver is important for things like memory management.

              Blk driver _can_ help some with I/O.

              But with disk I/O your will see much improved performance with different cache settings.

              For example if you are using Windows on file-back storage you will get best results with 'cache=writeback' option for your disk drives.

              If your using Linux with Virtio drivers and are using LVM logical volumes, dedicated driver, or other raw dedicated block device for your virtual drive then you will want to use 'cache=none'.

              The default for KVM is 'cache=writethrough' which is a decent all around compromise between performance and data security.

              Also new Linux features like KSM will merge memory between multiple VM instances of hte same OS so you can run more VMs then your system's memory can otherwise support. However KSM does add CPU overhead so unless you have multiple OSes of the same type running you'll want to disable it.


              For Linux users there really is no comparison.

              Virtualbox is friendlier (and this matters) for the desktop and will offer better graphical performance. However KVM is worlds and away more sophisticated, better performance, and much more complete VM solution. It requires more expertise to use properly though.

              For regular users on the desktop VirtualBox is probably the way to go, but if your using something for serious work then KVM is the answer.

              Your going to see it start to displace Vmware ESX more and more for enterprise solutions for companies that are heavily invested in Linux.
              I totally agreed with you ! (i'm also using kvm for professionnal use, no comparaison possible with virtualbox).

              i'm using kvm 0.13, with vhost=on, i can acheive 950mbit/s on a gibabit nic.
              And for with using virtio disks and cache=none on raw disk (on an san array), i can acheive 20000 iops (with cpu burning

              Comment


              • #22
                Originally posted by birdie View Post
                and that's why the whole test makes no sense. Virtualization is known to work badly with "virtual" "emulated" CPUs. So, next time I'd like to see something a bit more realistic, like HT support disabled in BIOS, host and guest limited to say 4 CPUs (host via kernel parameters).
                I would second that. You simply gave the host no time to take a breath.

                You mentioned that the tests were automated. It would be very nice to see the test results in a more realistic environment, including vmware and openvz (if possible).

                Comment


                • #23
                  Too bad it would be "illegal" to include any Vmware results. Oh well...
                  I wouldn't mind seeing some Xen comparisons though.
                  Great article anyhow

                  Comment


                  • #24
                    Originally posted by latebeat View Post
                    Too bad it would be "illegal" to include any Vmware results. Oh well...
                    I wouldn't mind seeing some Xen comparisons though.
                    Great article anyhow
                    Well that's not entirely true. You may benchmark vmware and publish the results, you just have to send them your test plan, they approve the methodology, you benchmark, send results in and they either approve or disapprove to the publication.

                    Comment


                    • #25
                      Originally posted by deanjo View Post
                      Well that's not entirely true. You may benchmark vmware and publish the results, you just have to send them your test plan, they approve the methodology, you benchmark, send results in and they either approve or disapprove to the publication.
                      Yeah right..
                      To me that's ridiculous... also judging from the amount of good and unbiased vmware comparisons that you can find online, you can imagine how often they "approve" the results :-)

                      Comment


                      • #26
                        New benchmark with VirtualBox 4.1?

                        Hello! I'm curious how things changed now that Oracle took over the VirtualBox project. Can you guys do a re-make of this benchmark? Thanks!

                        Comment


                        • #27
                          Would someone perform a similar test for QEMU, VirtualBox, VMware Player for Windows 7 on Linux? Yes, initially thinking, the performance of those should be somewhat similar to the one in your existing tests... However, I find that this is not the case for running Windows (I perform some CPU intensive calculations and VirtualBox is outperforming QEMU with KVM by 10-15%), somehow. This is, of course, just a hypothesis. I suppose that it may be due to VirtualBox paying more attention to virtualizing Windows than QEMU.

                          Comment


                          • #28
                            Originally posted by ernetas View Post
                            Would someone perform a similar test for QEMU, VirtualBox, VMware Player for Windows 7 on Linux? Yes, initially thinking, the performance of those should be somewhat similar to the one in your existing tests... However, I find that this is not the case for running Windows (I perform some CPU intensive calculations and VirtualBox is outperforming QEMU with KVM by 10-15%), somehow. This is, of course, just a hypothesis. I suppose that it may be due to VirtualBox paying more attention to virtualizing Windows than QEMU.
                            We tested VirtualBox and KVM running on Fedora hosts and Windows 7 64 guest and the results were mixed.
                            Anything graphical left KVM behind: Application launch, browsing, etc.
                            Anything computation intensive (E.g. compilation) favored KVM.
                            More-ever, KVM seems to be far more resistant to running a large number of guests on the same host.

                            - Gilboa
                            Last edited by gilboa; 11-29-2013, 07:24 AM.
                            DEV: Intel S2600C0, 2xE52658V2, 32GB, 4x2TB + 2x3TB, GTX780, F21/x86_64, Dell U2711.
                            SRV: Intel S5520SC, 2xX5680, 36GB, 4x2TB, GTX550, F21/x86_64, Dell U2412..
                            BACK: Tyan Tempest i5400XT, 2xE5335, 8GB, 3x1.5TB, 9800GTX, F21/x86-64.
                            LAP: ASUS N56VJ, i7-3630QM, 16GB, 1TB, 635M, F21/x86_64.

                            Comment

                            Working...
                            X