Benchmarking virtual machines

Besides generic benchmark best practices, consider the following while running tests on virtual machines:

  • Using a high number of threads or a deep queue can improve results, as virtual machine I/O tends to have more latency compared to tests running on a host.
  • Using test sets with a size comparable to the size of a virtual disk, or running the same test several times, can significantly impact test results on thin disks. With each repetition a virtual disk becomes “thicker,” which leads to higher performance of subsequent tests.
  • Using snapshots is generally not recommended if the goal is to maximize performance. The system needs to synchronize data of a live volume and its snapshot, which adds an I/O overhead that lowers the disk performance. The impact of snapshots, however, may be reduced by using larger test sets.