Your best source of information and news about BIOS, xp and BIOS on the internet

Vista ARTICLES TOP 50 Spyware Virus Vista SOFT Vista HELP

VirtualBox Performance on AMD Phenom II (AMD-V & Nested Paging):



My primary motive for choosing AMD as a platform for my latest system was AMD’s superb Virtualization support, specifically AMD-V and Nested Paging. I’m not going to get into the nuts and bolts of AMD-V (or Intel’s VT-x), but here is an excellent article if you would like to read up on the specs, and the differences between AMD and Intel’s Hardware Virtualization support.

Another benefit of AMD is the fact that the memory controller is part of the CPU, effectively ruling out a Front Side Bus as a possible performance bottleneck. Intel’s latest Core i7 chips also have an integrated memory controller, however the price vs. performance ratio with Intel, especially taking into account the price of X58 chipset-based motherboards, and DDR3 RAM was prohibitive for me even considering such a platform (especially since I had 8GB of quality DDR2 ready to use in this build).

Although we use Citrix XenServer Enterprise at work, it’s not a workstation product (although they are working on one, which is quite interesting, and a very different spin to workstation virtualization). For home use, I rely on Sun’s excellent VirtualBox. Although VirtualBox isn’t a “bare metal” hypervisor, offering Paravirtualization such as a server oriented product like Xen, it is an excellent workstation product which is not only free (and even has an Open Source variant), but in my opinion, better than some commercially available products.

One of my favorite features of VirtualBox is it’s ability to make full use of AMD-V and Nested Paging, which dramatically improves performance. I decided to do a simple test using Cinebench to see just how close to native performance I get in a real-world benchmark.

Cinebench is an awesome CPU benchmark. It not only simulates a real-world performance scenario, but is as close to a pure CPU benchmark as you can get without going ‘synthetic’. Since I was working in a single-tread mode with this test, I chose to use the (older) 9.5 version of the tool, as it renders much quicker than the current version 10. If you are looking to really benchmark your system, I would recommend version 10 however. So now, without much ado, here is what I found:

Test Setup

  • CPU: AMD Phenom II X4 940 Black Edition 3GHz @ 3.4GHz
  • CPU Cooler: OCZ Vendetta
  • Motherboard: ASUS M4A79 Deluxe
  • RAM: Geil Black Dragon DDR2-800 (5-5-5-15)
  • Primary HDD: Western Digital WD6400AAKS
  • Secondary HDD: Western Digital WD3200AAKS
  • Graphics: ASUS EAH4830: ATI HD 4830, 512MB, PCI-e (Overclocked @ 700/1185).
  • PSU: Antec Basiq Plus 550W
  • Case: Antec Three Hundred
  • Host Operating System: Windows Vista Business x64
  • Guest Operating System: Windows Server 2008 x64

Test Methodology:

Host Run:

Since I wanted this to be a single-tread test, after launching Cinebench, I went into task manager, and I set the affinity of Cinebench to a single CPU core (in this case, Core 3):

affinity_set_host

I then ran the Single CPU test in Cinebench:

host_running_affinity_set

Notice in the screenshot above that only one core is active. If I had not set affinity on Cinebench, even though I was running the single threaded test, it would have been bounced around the cores. Instead of having one single core maxed out (like a single CPU system), it would have looked like this (with each core getting some activity) with I did not feel would give an accurate result:

host_running_affinity__not_set

After running the benchmark on the host, I opened VirtualBox and booted up my Windows Server 2008 x64 Virtual Machine (which has 2GB of RAM allocated too it). Although technically a different OS than the Host, Server 2008 is very similar to Vista architecturally, and runs the same Kernel. Unfortunately I didn’t have a Vista x64 machine handy, and I wanted to get on with the test. I then set the affinity on the VirtualBox process on the host in the same manner that I did with Cinebench to prevent the VirtualBox process from being bounced from core to core (again, keeping this as single threaded as possible). I then ran the single-treaded Cinebench test in the guest operating system. Please note that Hardware Virtualization is enabled automatically in VirtualBox when creating x64 based Virtual Machines, but not automatically for x86 VM’s. Also note that Nested Paging needs to be turned on manually regardless of guest architecture.

vbox_settings

Now for the results:

The host scored 576 on the test, and rendered the test image in 39 seconds.

host_singlethread_result

The guest scored 570 and rendered the test image in 40 seconds.

guest_singlethread_result

Cinebench only lists the time results in whole seconds, and I would have liked to have known the exact amount of time, as I’m sure it wasn’t exactly one second difference.

Final Thoughts:

Although this was a simple, and very unscientific test, it does go to show just how well VirtualBox, when coupled with AMD-V and Nested Paging can perform a real-world CPU load scenario. I welcome someone with a comparable Intel system (say a Q9550-Q9650…or heck, even a Core i7 920) to recreate my test and let me know the results, as I would surely be interested in knowing the results of such a test.

Popularity: 1%


Written by jaysonrowe. Read more great feeds at is source WEBSITE
no comments.
Read more articles on virtualbox and otherSoftware and AMD and Computing.

Related articles

No comments

There are still no comments on this article.

Leave your comment...

If you want to leave your comment on this article, simply fill out the next form:




You can use these XHTML tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong> .