Why do virtual machine files on a ramdisk not run faster than on a physical disk?

I installed a total of 36 GB of memory (4x8 GB + 2x2 GB) onn the host (Windows 7) and I used ImDisk to create a 32 GB ramdisk and formatted it with an NTFS file system.

Then I copied the virtual machine (in VMware Workstation format) folder, including .vmx, .vmdk, etc. to the newly created ram disk.

Then I tried to power it on in VMware Workstation.

What made me surprised is that the performance is not better than before. It costs almost the same time to power on the Windows 7 VM.

I checked the Resource Monitor in the Windows 7 host, and the statistics of CPU, disk and network are rather normal. The memory has reported 3000+ hard fault/sec when the guest OS boots, then drops to 0 after the guest powered on.

Any idea about this issue? I had thought the performance of ramdisk would be better than a physical disk in this case. Am I wrong?


You didn't mention how your RAM is allocated. if the VM is too small it will cause paging activity this could show up as page faults in the VM. Thinking this might keep your cpu load as you swap in and out from your swap space (if its in ram disk you probably won't see much host IO mainly VM io)