If I allow raw partition access to a virtual machine, will it be considerably faster than a normal, file-based virtual disk?
I'm using VirtualBox, Windows 7 and a 5400 rpm HDD, if that matters.
The Microsoft Word document titled Virtual Hard Disk performance discusses the performance results obtained under Hyper-V. It states :
To back up this statement, the document contains measures pertaining to various cases, from which one can conclude that raw partition/disk does not improve performance by much, if at all.
There are too many results to duplicate here, so I only give below two of them.
For fixed-sized VHD :
For dynamically expanding VHD (results are not as uniform as before) :
I'd personally stick to using a VHD rather than use raw access. The warning in Virtualbox documentation sets off all kinds of bells about stability issues.
I've used raw disks with VMWare when I had to run 3 operating systems simultaneously and the files were on the same partition. Raw disks improved performance slightly. However, I encountered issues while using features such as snapshots. Hence, I switched back to VHD setup. Under normal modes of operation while using a single VM, I've not experienced any noticeable performance gain. However, I have not verified this using any performance assessment tool.
I'm using Linux as host OS and WinXP as guess in VirtualBox. I was using it with file storage, now my XP is on separate partition on the HDD. My observations are that there is no benefit at all, at least none that I can feel. There is theoretical benefit, since you will skip the FS layer, but with today's systems it seems it's too small benefit to be of matter.
So my experience says: use file with preallocated storage, since the dynamically allocated image will make huge difference (it is much slower and IO hungry, than preallocated).