Implantar dispositivos gráficos usando um vGPU do RemoteFX

Aplica-se a: Windows Server 2022, Windows Server 2019, Windows Server 2016, Microsoft Hyper-V Server 2016

Observação

Devido a questões de segurança, a vGPU do RemoteFX está desabilitada por padrão em todas as versões do Windows desde a Atualização de Segurança de 14 de julho de 2020 e foi removida desde a Atualização de Segurança de 13 de abril de 2021. Para saber mais, confira KB 4570006.

O recurso vGPU para RemoteFX possibilita que várias máquinas virtuais compartilhem uma GPU física. Recursos de renderização e computação são compartilhados dinamicamente entre máquinas virtuais, tornando o vGPU do RemoteFX apropriado para cargas de trabalho de alta intermitência em que recursos de GPU dedicadas não são necessários. Por exemplo, em um serviço VDI, o vGPU do RemoteFX pode ser usado para descarregar os custos de renderização de aplicativos para a GPU, com o efeito de diminuir a carga da CPU e melhorar a escalabilidade do serviço.

Requisitos de vGPU do RemoteFX

Requisitos do sistema host:

  • Windows Server 2016
  • Uma GPU compatível com DirectX 11.0 com um driver compatível com WDDM 1.2
  • Uma CPU com suporte para SLAT (Conversão de Endereços de Segundo Nível).

Requisitos da VM convidada:

Considerações adicionais para VMs convidadas:

  • As funcionalidades OpenGL e OpenCL só estão disponíveis em convidados que executam o Windows 10 ou Windows Server 2016.
  • O DirectX 11.0 só está disponível para convidados que executam Windows 8 ou posteriores.

Habilitar o vGPU do RemoteFX

Para configurar o vGPU do RemoteFX no host Windows Server 2016:

  1. Instale os drivers gráficos recomendados pelo fornecedor de GPU para Windows Server 2016.
  2. Crie uma VM executando um sistema operacional convidado com suporte pelo vGPU do RemoteFX. Para saber mais, confira Suporte ao vGPU (RemoteFX 3D Video Adapter).
  3. Adicione o adaptador gráficos 3D do RemoteFX à VM. Para saber mais, confira Configurar o adaptador 3D do vGPU do RemoteFX.

Por padrão, o vGPU do RemoteFX usará todas as GPUs disponíveis e com suporte. Para limitar quais GPUs o vGPU do RemoteFX usa, siga estas etapas:

  1. Navegue até as configurações do Hyper-V no Gerenciador do Hyper-V.
  2. Selecione GPUs Físicas nas Configurações de Hyper-V.
  3. Selecione a GPU que você não deseja usar e, em seguida, desmarque Usar esta GPU com RemoteFX.

Configurar o adaptador 3D do vGPU do RemoteFX

Você pode usar a interface do usuário do Gerenciador do Hyper-V ou cmdlets do PowerShell para configurar a placa gráfica 3D do vGPU do RemoteFX.

Configurar o vGPU do RemoteFX com o Gerenciador do Hyper-V

  1. Interrompa a VM se ela estiver em execução no momento.

  2. Abra o Gerenciador do Hyper-V, navegue até Configurações da VM e selecioneAdicionar Hardware.

  3. Selecione Adaptador de Gráficos 3D do RemoteFX e selecione Adicionar.

  4. Defina o número máximo de monitores, a resolução máxima do monitor e a memória de vídeo dedicada ou deixe os valores padrão.

    Observação

    • A definição de valores mais altos para qualquer uma dessas opções afetará a escala de serviço, portanto, você só deverá definir o que for necessário.
    • Ao precisar usar 1 GB de VRAM dedicada, use uma VM convidada de 64 bits em vez de 32 bits (x86) para obter melhores resultados.
  5. Selecione OK para concluir a configuração.

Configurar o vGPU do RemoteFX com cmdlets do PowerShell

Use os seguintes cmdlets do PowerShell para adicionar, analisar e configurar o adaptador:

Monitorar desempenho

O desempenho e a escala de um serviço habilitado para o vGPU do RemoteFX são determinados por uma variedade de fatores, como número de GPUs em seu sistema, memória da GPU total, a quantidade de memória do sistema e a velocidade da memória, o número de núcleos da CPU e a frequência do relógio da CPU, a velocidade de armazenamento e a implementação de NUMA.

Memória do sistema host

Para cada VM habilitada com um vGPU, o RemoteFX usa memória do sistema no sistema operacional convidado e no servidor host. O hipervisor garante a disponibilidade da memória do sistema para um sistema operacional convidado. No host, cada área de trabalho virtual habilitada para vGPU precisa anunciar seu requisito de memória do sistema para o hipervisor. Quando a área de trabalho virtual habilitada para vGPU é iniciada, o hipervisor reserva memória adicional do sistema no host.

O requisito de memória para o servidor habilitado para RemoteFX é dinâmico porque a quantidade de memória consumida no servidor habilitado para RemoteFX depende do número de monitores associados às áreas de trabalho virtuais habilitadas para vGPU e da resolução máxima para esses monitores.

Memória de vídeo de GPU do host

Cada área de trabalho virtual habilitada para vGPU usa a memória de vídeo de hardware de GPU no servidor host para renderizar a área de trabalho. Além disso, um codec usa a memória de vídeo para compactar a tela renderizada. A quantidade de memória necessária para renderização e compactação é diretamente baseada no número de monitores provisionados na máquina virtual. A quantidade de memória de vídeo reservada varia de acordo com a resolução da tela do sistema e quantos monitores existem. Alguns usuários exigem uma resolução de tela mais alta para tarefas específicas, mas há maior escalabilidade com configurações de resolução mais baixa se todas as outras configurações permanecerem constantes.

CPU do host

O hipervisor agenda o host e as VMs na CPU. A sobrecarga é aumentada em um host habilitado para RemoteFX porque o sistema executa um processo adicional (rdvgm.exe) por área de trabalho virtual habilitada para vGPU. Esse processo usa o driver de dispositivo gráfico para executar comandos na GPU. O codec também usa a CPU para compactar dados de tela que precisam ser enviados de volta ao cliente.

Mais processadores virtuais significam uma melhor experiência do usuário. Recomendamos alocar pelo menos duas CPUs virtuais por área de trabalho virtual habilitada para vGPU. Também recomendamos usar a arquitetura x64 para áreas de trabalho virtuais habilitadas para vGPU porque o desempenho em máquinas virtuais x64 é melhor em comparação com máquinas virtuais x86.

Poder de processamento de GPU

Cada área de trabalho virtual habilitada para vGPU tem um processo DirectX correspondente que é executado no servidor host. Esse processo reproduz todos os comandos gráficos que recebe da área de trabalho virtual RemoteFX para a GPU física. Isso é como executar vários aplicativos DirectX ao mesmo tempo na mesma GPU física.

Normalmente, os dispositivos gráficos e os drivers são ajustados para executar apenas alguns aplicativos na área de trabalho de cada vez, mas o RemoteFX estende as GPUs para ir ainda mais longe. As vGPUs vêm com contadores de desempenho que medem a resposta da GPU às solicitações RemoteFX e ajudam a garantir que as GPUs não sejam estendidas muito longe.

Quando uma GPU está com poucos recursos, as operações de leitura e gravação levam muito tempo para serem concluídas. Os administradores podem usar contadores de desempenho para saber quando ajustar recursos e evitar tempo de inatividade para os usuários.

Saiba mais sobre contadores de desempenho para monitorar o comportamento do vGPU do RemoteFX em Diagnosticar problemas de desempenho gráfico na Área de Trabalho Remota.