Desempenho do processador do Hyper-V

Os servidores de virtualização hospedam várias VMs (máquinas virtuais) isoladas, mas que compartilham os recursos de hardware subjacentes. Os processadores, a memória e os dispositivos de E/S são virtualizados. Quando você consolida servidores em um único computador, a virtualização aprimora o uso de recursos, melhora a eficiência energética e reduz os custos operacionais e de manutenção dos servidores. Este artigo ajuda você a entender as considerações de desempenho do processador para ajustar e aprimorar o desempenho do Hyper-V.

Serviços de integração de máquina virtual

Os serviços de integração de VM (máquina virtual) incluem drivers habilitados para os dispositivos de E/S específicos do Hyper-V, o que reduz significativamente a sobrecarga de CPU para E/S em comparação com dispositivos emulados. Instale a versão mais recente dos serviços de integração de VM em todas as VMs com suporte. Os serviços diminuem o uso da CPU dos convidados, de convidados ociosos a convidados muito usados, e aprimoram a taxa de transferência de E/S. Essa é a primeira etapa no desempenho de ajuste em um servidor que executa o Hyper-V. Para obter uma lista dos sistemas operacionais convidados com suporte, confira a Visão geral do Hyper-V.

Processadores virtuais

Você deve configurar VMs que tenham cargas que não consomem muita CPU para usar apenas um processador virtual. Essa configuração é necessária devido à sobrecarga extra associada a vários processadores virtuais, como outros custos de sincronização no sistema operacional convidado. Para saber mais sobre o máximo de componentes configuráveis no Hyper-V, consulte Planejar a escalabilidade do Hyper-V no Windows Server.

Aumente o número de processadores virtuais se a VM exigir mais de uma CPU de processamento sob carga de pico.

Atividade em segundo plano

Minimizar a atividade em segundo plano em VMs ociosas libera ciclos de CPU que outras VMs usam. Normalmente, os convidados do Windows usam menos de um por cento de uma CPU quando estão ociosos. Veja as seguintes práticas recomendadas para minimizar o uso da CPU de uma VM em segundo plano:

  • Instale a mesma versão dos Serviços de Integração de VM.

  • Remova o adaptador de rede emulado por meio da caixa de diálogo de configurações da VM (use o adaptador específico do Microsoft Hyper-V).

  • Remova os dispositivos não utilizados, como a porta CD-ROM e COM, ou desconecte sua mídia.

  • Mantenha o sistema operacional convidado do Windows na tela de entrada quando ele não estiver sendo usado e desabilite o protetor de tela.

  • Examine as tarefas agendadas e os serviços habilitados por padrão.

  • Examine os provedores de rastreamento do ETW (Rastreamento de Eventos para Windows) que estão ativados por padrão executando logman.exe query -ets.

  • Aprimore aplicativos de servidor para reduzir a atividade periódica (como temporizadores).

  • Feche o Gerenciador do Servidor nos sistemas operacionais host e convidado.

  • Não deixe o Gerenciador do Hyper-V em execução, pois ele atualiza constantemente a miniatura da VM.

Veja a seguir práticas recomendadas para configurar uma versão do cliente do Windows em uma VM para reduzir o uso geral da CPU:

  • Desabilite os serviços em segundo plano, como o SuperFetch e o Windows Search.

  • Desabilite tarefas agendadas, como a desfragmentação agendada.

NUMA Virtual

O Hyper-V no Windows Server expande os limites de dimensionamento de VM para habilitar a virtualização de cargas de trabalho de grande expansão. Quando você cria VMs grandes, a memória de vários nós NUMA no sistema host normalmente é usada. Nesse tipo de configuração de VM, se você não alocar processadores virtuais e memória do mesmo nó NUMA, as cargas de trabalho poderão ter um desempenho ruim. O desempenho é afetado negativamente porque as cargas de trabalho não podem aproveitar as otimizações NUMA. Para saber mais sobre o máximo de componentes configuráveis no Hyper-V, consulte Planejar a escalabilidade do Hyper-V no Windows Server.

No Windows Server, o Hyper-V apresenta uma topologia NUMA virtual para VMs. Por padrão, esta topologia NUMA virtual é otimizada para corresponder à topologia NUMA do computador host subjacente. Expor uma topologia NUMA virtual em uma VM permite que o sistema operacional convidado e quaisquer aplicativos habilitados para NUMA, que estejam sendo executados nele, aproveitem as otimizações de desempenho NUMA, da mesma maneira que ocorreria se fossem executados em um computador físico.

Não há distinção entre um NUMA virtual e um físico da perspectiva da carga de trabalho. Dentro de uma VM, quando uma carga de trabalho aloca memória local para os dados e os acessa no mesmo nó NUMA, o acesso rápido de memória local resulta no sistema físico subjacente. Desta maneira, as penalidades de desempenho causadas pelo acesso de memória remoto são evitadas com sucesso. Somente aplicativos com reconhecimento de NUMA podem se beneficiar do vNUMA.

O Microsoft SQL Server é um exemplo de aplicativo com reconhecimento de NUMA. Para obter mais informações, confira Noções básicas sobre o acesso à memória não uniforme.

Você não pode usar os recursos de NUMA virtual e memória dinâmica ao mesmo tempo. Uma VM com memória dinâmica habilitada nela tem efetivamente apenas um nó NUMA Virtual. E nenhuma topologia NUMA é apresentada à VM, independentemente das configurações do NUMA virtual.

Para obter mais informações sobre o NUMA Virtual, confira a Visão geral do NUMA Virtual do Hyper-V.

Aqui estão alguns artigos para ajudá-lo a saber mais sobre o Hyper-V.