Is it acceptable to use Azure VMs for comparing performance of an application over different Windows OS's?

I've heard that testing in a VM can give squiffy results as the hypervisor tries to juggle resources.

  1. Is that true?
  2. If it is, is it predictable and can I account for it?

1 Answer 1


its hard to answer the first question , yes the cpu may well get called away but its generally not for long enough to be an issue. There are many factors , depending on how io or cpu bound your application is that would decide if this is a problem. i would suggest you do some exploratory testing on a small scale to find out the practical limits of how much delay it can cope with.

you could get a reasonable approximation by running your applications and target oses in guests on a local hyperv host and compare against non virtualised versions of the same setup. i would suggest applying some load in another guest VM such as compiling a kernel or using fio to keep the disks busy. make sure that host has a cpu that properly supports virtualisation to keep it fair.

for the second question , no it wont be predictable but if it happens it will generally happen to everything around it so ensure your mitigation doesn't make it worse for something else.

  • also cloud VM's don't tend to have 3d acceleration in the way desktops do now. This will change the speed of your app and effect its performance. Don't be fooled by the existance of 3d support when you are logged in via RDP , its using your desktop.
    – Amias
    Jun 14, 2019 at 9:45

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.