Windows Servers (and workstations) very thoughtfully set our power mode on all new installs to be "Balanced". What does this mean exactly? Well, take a look at the two screenshots below, and see if you can spot the difference (apart from the time).
The first image has the default power mode of "Balanced" and the second image has the power mode of "High Performance". The difference between the two pictures is the value for "Speed".
Consider this: Your physical server default installation has it's processing power reduced by half automatically. Any guest machines you have also have their processing power reduced by half. This is hardware assisted virtualization, sure, but the Hypervisor is still responsible for allocating time slices, so effectively, on a standard installation, your virtual machines may be operating at around one quarter of the maximum speed.
To get around this, change your power plan on all your physical hosts as well as virtual hosts to be "High Performance" You can do this easily by a simple command line:
If you are on an 80 core server, and Hyper-V has limited you to 64 cores - don't let it operate like that. Hyper-V will limit the last CPU's which go over the 64 limitation - so in a 4 CPU 10 core with hyperthreading server, your effective cores will 20 + 20 + 20 + 4. This means that 3 of your CPU's can be utilized fully and the last is not. you could potentially resolve this by limiting the amount of cores per CPU in your BIOS, making sure it will offer a balanced number of cores to a maximum of 64 to the OS.
Hyper-V slows down over time - reboot every 1-2 months. In a heavy environment like mine where I am running well over 100 virtual servers per physical host, I've found that the Clustering part of Hyper-V seems to start slowing down, and (the clustering resource manager) may crash when trying to do a simple task like move a virtual machine between hosts. This unfortunately very abruptly stops all running Virtual machines on that host, and they have to start up on another host. You will notice this slowdown especially when you're using SCVMM to manage your Hyper-V clusters, because jobs will start performing slower. As an example, just before my cluster failed, it took me 40 minutes to create a new virtual machine, when it should really take me 40 seconds. My cluster hosts seem to need rebooting every 2 months. Be sure to fit in a maintenance schedule to update and reboot your servers every 1 or 2 months to avoid slowdowns.
More "gotcha" type tips will be added to the document (via comments) as I get caught out by stuff :)