1

I am running Hyper V on a 12 GB, i7 Sever with 5 VMs running. I had the impression that the VMs operate quite slowly but the memory consumption and cpu utilization are not worth mentioning so I started the performance monitor and found out that there are two metrics that seem to be quite high: Avg. Disc Write: 40ms - 100ms Avg. Disc Read: partly up to 60ms

(see the screenshot: Performance Monitor

I think these numbers are quite high, but I am not 100% sure. Can someone confirm that? What can be done to reduce the latency?

Update 1: According to this page Monitoring Disk Usage from Microsoft PhysicalDisk: % Disk Time should not exceed 90% and PhysicalDisk: Current Disk Queue Length should not be more then 1.5 to 2. However, the values on my server exceed these numbers (red is Queue Length) drastically. I have checked the same metrics on a local server in our office which has nearly the same configuration and load (I am not sure for the disk model/manufacturer, but it's a retail PC). Here the % Disk Time is only around 20 to 40!

enter image description here

Skyhawk
  • 14,149
  • 3
  • 52
  • 95
Heinrich
  • 900
  • 4
  • 21
  • 35
  • Why would you care about write latency? It's not like anyone's waiting around for the write to complete. – David Schwartz Oct 26 '11 at 21:03
  • To my mind this will slow down my server. – Heinrich Oct 26 '11 at 21:08
  • Write latency will not slow down your server. Nothing is waiting for the write to complete. How long the average plate spends waiting in your garbage can to be taken by the garbage men doesn't affect how long it takes you to clean off the table. On the other hand, most read requests are being waited for and something important usually can't make forward progress until that read completes. – David Schwartz Oct 26 '11 at 21:12
  • As @David Schwartz says, there is not much impact. Out of curiosity, how are the disks configured on the host? Disk type? RAID? Etc – Dave M Oct 26 '11 at 21:22
  • There is no special configuration, it's just the "plain" disk in the system. See my edit. – Heinrich Oct 26 '11 at 21:37

2 Answers2

5

If there is only one barista working at your favorite coffee shop and you show up with four co-workers, on average it will take longer for each of you to receive a drink.

Similarly, virtual servers will not perform well when sharing a single spinning disk. The reason is simple: disk latency is the main performance bottleneck in most computing applications! When you share a single disk between multiple VMs, each one has to wait in line for disk reads/writes that are slow enough even when a server has a single drive to itself.

Example of a typical small-scale, non-clustered Hyper-V server disk configuration:

 Disk  Configuration               Function
 C:    RAID-1 mirror (2 disks)     Operating system
 D:    DVD-ROM drive               Installation discs
 E:    RAID-10 array (4+ disks)    Hyper-V Guests

When a Hyper-V host has numerous guests, hosts a busy SQL database server, or is part of a Hyper-V cluster, you may need to start looking at DAS or SAN options that can provide dozens of physical disks accessible to multiple computers simultaneously. In a typical small business Hyper-V environment, where it is rare to exceed the 4 guest server operating systems included within a Server 2008 Enterprise license, SAN/DAS solutions often are overkill; the 6-8 drives that fit into a typical 1U or 2U server chassis may be enough.

The declining cost of solid state storage (and/or hybrid storage options such as Intel's emerging Rapid Storage Technology) may eventually change the rules, but you cannot expect several virtual servers to perform well when chained to a single spinning disk.

The other potential consequences of not using RAID, which include unnecessary downtime and a higher likelihood of losing all data written since your most recent backup, are even more important than the performance implications. However, these concerns fall outside the scope of your original question.

Skyhawk
  • 14,149
  • 3
  • 52
  • 95
  • I am not using separate disks for the VMs, probably this is an issue. Thanks for the information! – Heinrich Oct 27 '11 at 07:31
  • 2
    I have just put all of my VMs on a separate disk now and the server is running like never before ... how it shoulld be ;) – Heinrich Oct 27 '11 at 08:06
1

It's difficult to answer if you give no information on what storage you are using and how it's configured. In the worst-case scenario, you could be running 5 VMs on the same physical disk where the O.S. resides... and this would really slow things down.

Also, knowing what those VMs are actually doing in terms of disk I/O would help a lot in diagnosing your problem.

Massimo
  • 68,714
  • 56
  • 196
  • 319