A resposta à sua pergunta é muito simples: a virtualização não é eficiente (ainda não). As máquinas virtuais funcionam bem o suficiente (especialmente em hardware semelhante) e são uma solução, mas nunca alcançarão o mesmo desempenho que as máquinas físicas reais. Na minha empresa, muitas vezes precisamos explicar aos clientes quando é hora de migrar uma máquina virtual para a física.
Como você esperaria que vários sistemas operacionais virtuais trabalhassem com eficiência, quando nenhum deles sabe que é virtual? Como você esperaria que qualquer um dos drivers tomasse decisões inteligentes sobre filas e prioridades quando eles não conseguissem ver a fila correspondente nas outras máquinas virtuais? Inferno, eles nem conseguem ver o hardware físico real, baseando todas as decisões em fantasmas virtuais.
Por exemplo, toda máquina virtual inocente irá interromper a CPU pelo menos 1000 vezes por segundo, a fim de avançar seu relógio. Coloque n
máquinas virtuais em um físico e você terá (n + 1) * 1000
interrupções por segundo! Sem mencionar que a interrupção é, de longe, a operação mais lenta da CPU.
Acredito que, no futuro, veremos novos sistemas operacionais que funcionarão com eficiência como convidados do host. A tendência já é inventar dispositivos de hardware virtual com pequenos drivers triviais que deixam todas as decisões para a máquina física real. Mas ainda não estamos lá.
John T explicou todas as vantagens e conveniências da virtualização. Vou apenas retomar dizendo que eles são simplesmente usados por conveniência e economia. Eles são tão fáceis de se locomover, e em uma corporação que tem muitos servidores pouco usados espalhados em seus centros de TI, é muito tentador colocar vários deles em uma máquina física e esquecer todo o lote. Sem mencionar que ter menos caixas físicas ao redor simplifica a manutenção.