What are the advantages of using Hyper-V's synthetic drivers?

The synthetic drivers 'talk' more directly to the actual hardware, bypassing most of the hypervisor (for common data operations). This dramatically cuts down on the hypervisor overhead related to most network activity.

If your server doesn't communicate much on the network, or if your hardware is well undercommitted, you should be fine with the emulated drivers. There's definitely a performance penalty for doing this however.


When your hypervisor is emulating hardware, there are lots of registers and timing issues and other things that the client's driver is going to expect to do when it is doing things like putting packets into the NIC's buffer or putting data into a block on a disk drive.

When you use the synthetic driver, you skip all the "fiddle with this register (that's emulated by the hypervisor anyhow)" and skip straight to the "here's the data -- do the right thing with it" stage.

So the whole process is far more efficient.