Como ativar a aceleração 3D VirtIO-GL/VirGL em máquinas virtuais Proxmox VE 8

Como Ativar A Aceleracao 3d Virtio Gl Virgl Em Maquinas Virtuais Proxmox Ve 8



VirtIO-GL/VirGL é um recurso do hipervisor KVM/QEMU/libvirt usado para fornecer às máquinas virtuais KVM/QEMU/libvirt recursos de aceleração 3D. A aceleração 3D permite que as máquinas virtuais (com uma interface gráfica de usuário instalada) usem a GPU do host para tornar a interface gráfica de usuário mais responsiva e capaz de executar software ou jogos de produtividade 3D.

Proxmox VE usa a tecnologia KVM/QEMU/libvirt para suas máquinas virtuais. A partir do Proxmox VE 8, você pode usar a aceleração VirtIO-GL/VirGL 3D nas máquinas virtuais Linux para uma melhor experiência gráfica do usuário.

Neste artigo, mostraremos como habilitar a aceleração VirtIO-GL/VirGL 3D em máquinas virtuais Proxmox VE 8.







Tópico de Conteúdo:

  1. Instalando os drivers GPU no Proxmox VE 8
  2. Instalando as bibliotecas necessárias para aceleração VirtIO-GL/VirGL 3D no Proxmox VE 8
  3. Ativando a aceleração 3D da GPU VirtIO-GL/VirGL em uma máquina virtual Proxmox VE 8
  4. Testando se a aceleração 3D da GPU VirtIO-GL/VirGL está funcionando na máquina virtual Proxmox VE
  5. Conclusão

Instalando os drivers GPU no Proxmox VE 8

Para que a aceleração VirtIO-GL/VirGL 3D funcione no Proxmox VE 8, você deve ter o seguinte:



  • Uma GPU instalada em seu servidor Proxmox VE 8
  • Drivers de GPU instalados em seu servidor Proxmox VE 8

Os drivers de GPU Intel devem ser instalados em seu servidor Proxmox VE 8 por padrão se você tiver o Intel iGPU (GPU integrado) disponível. Você não precisa de nenhuma intervenção manual.



Se você tiver uma GPU NVIDIA em seu servidor Proxmox VE 8 e quiser usá-la para VirtIO-GL/VirGL, você deve baixar os drivers da GPU NVIDIA manualmente e instalá-los você mesmo em seu servidor Proxmox VE 8. Se precisar de ajuda para instalar os drivers de GPU NVIDIA em seu servidor Proxmox VE 8, leia este artigo.





Se você tiver uma GPU AMD em seu servidor Proxmox VE 8, também pode ser necessário instalar os drivers de GPU necessários em seu servidor Proxmox VE 8. Não temos uma GPU AMD. Então, não testamos. Mas se você estiver usando um AMD APU (processador AMD com GPU integrado), os drivers da GPU devem ser instalados por padrão, pelo que sabemos. Atualizaremos este artigo se tivermos a chance de testá-lo.

Instalando as bibliotecas necessárias para aceleração VirtIO-GL/VirGL 3D no Proxmox VE 8

Para que a aceleração VirtIo-GL/VirGL 3D funcione em máquinas virtuais Proxmox VE 8, você deve ter as bibliotecas LibEGL e libGL instaladas em seu servidor Proxmox VE 8. As bibliotecas LibEGL e libGL estão disponíveis nos repositórios oficiais de pacotes do Proxmox VE 8. Portanto, são muito fáceis de instalar.



Primeiro, navegue até Datacenter > pve > Shell para acessar o shell Proxmox VE do seu servidor Proxmox VE 8 e execute o seguinte comando para atualizar o cache do banco de dados do pacote Proxmox VE:

$ atualização adequada

  Uma captura de tela de computador Descrição gerada automaticamente

Para instalar as bibliotecas LibEGL e LibGL no servidor Proxmox VE 8, execute o seguinte comando:

$ apto instalar -e libegl1 libgl1

As bibliotecas LibEGL e LibGL devem ser instaladas. No nosso caso, eles já estão instalados.

  Uma captura de tela de um computador Descrição gerada automaticamente

Ativando a aceleração 3D da GPU VirtIO-GL/VirGL em uma máquina virtual Proxmox VE 8

Para habilitar a aceleração VirtIO-GL/VirGL 3D em uma máquina virtual Proxmox VE 8, navegue até a seção “Hardware” da máquina virtual [1] . Clique duas vezes (LMB) em “Display” [2] e selecione “VirGL GPU” no menu suspenso “Placa gráfica” [3] .

Por padrão, a GPU VirGL usa apenas 256 MB de memória/VRAM (no máximo) da GPU instalada em seu servidor Proxmox VE quando a máquina virtual está em execução. Isso é suficiente para a maioria dos casos. Se você deseja alocar mais memória/VRAM para a máquina virtual, digite-o na seção “Memória (MiB)” [4] .

Quando terminar, clique em “OK” [5] .

  Uma captura de tela de um computador Descrição gerada automaticamente

VirtIO-GL/VirGL deve estar habilitado para a máquina virtual Proxmox VE 8 desejada.

  Uma captura de tela de um computador Descrição gerada automaticamente

Agora você pode iniciar a máquina virtual normalmente.

  Uma captura de tela de um computador Descrição gerada automaticamente

Se VirtIO-GL/VirGL for habilitado na máquina virtual Proxmox VE 8 com sucesso, a máquina virtual será iniciada sem nenhum erro e a tela da máquina virtual será exibida na interface web do Proxmox VE 8.

  Uma captura de tela de computador de uma água-viva Descrição gerada automaticamente

Testando se a aceleração 3D da GPU VirtIO-GL/VirGL está funcionando em máquinas virtuais Proxmox VE

Você pode navegar até Configurações> Sobre no ambiente de área de trabalho GNOME para encontrar as informações de “Gráficos” da máquina virtual. Como você pode ver, a máquina virtual está usando o NVIDIA RTX 4070 que temos em nosso servidor Proxmox VE 8 via VirIO-GL/VirGL. Em outros ambientes de desktop, você encontrará informações semelhantes no aplicativo “Configurações”.

  Uma captura de tela de um computador Descrição gerada automaticamente

Para testar se o VirIO-GL/VirGL faz alguma melhoria 3D nas máquinas virtuais Proxmox VE 8, criamos duas máquinas virtuais Ubuntu 22.04 LTS em nosso servidor Proxmox VE 8. Habilitamos VirtIO-GL/VirGL em um deles e usamos as configurações de exibição padrão (aceleração 3D desabilitada) no outro. Em seguida, executamos o teste “glmark2” e comparamos os resultados.

Se quiser realizar os mesmos testes, você pode instalar “glmark2” em sua máquina virtual Ubuntu 22.04 LTS com os seguintes comandos:

$ sudo atualização adequada

$ sudo apto instalar glmark2 -e

Enquanto o benchmark “glmark2” está em execução, a máquina virtual Proxmox VE 8 que tem a aceleração VirtIO-GL/VirGL 3D habilitada consome menos recursos de CPU (Figura 1) em comparação com aquela que tem a aceleração VirtIO-GL/VirGL 3D desabilitada ( Figura 2). A aceleração VirtIO-GL/VirGL 3D que desativa o uso da CPU das máquinas virtuais Proxmox VE 8 é de quase 100%, como você pode ver na imagem a seguir (figura 2). O alto uso da CPU significa que o 3D é simulado pela CPU em vez de ser acelerado pela GPU. Portanto, a aceleração 3D VirtIO-GL/VirGL melhora o desempenho 3D das máquinas virtuais Proxmox VE 8 e torna a interface do usuário do ambiente gráfico de desktop Linux mais responsiva.

  Uma captura de tela de um computador Descrição gerada automaticamente

Figura 1: Uso da CPU ao executar o benchmark “glmark2” na aceleração VirtIO-GL/VirGL 3D habilitada na máquina virtual Proxmox VE 8

  Uma captura de tela de um computador Descrição gerada automaticamente

Figura 2: Uso da CPU ao executar o benchmark “glmark2” na aceleração VirtIO-GL/VirGL 3D que está desabilitada na máquina virtual Proxmox VE 8

A pontuação “glmark2” prova que a aceleração VirIO-GL/VirGL 3D realmente melhora a experiência gráfica geral do usuário das máquinas virtuais Proxmox VE 8. Na máquina virtual Proxmox VE 8 com aceleração VirtIO-GL/VirGL 3D habilitada, a pontuação “glmark2” é 2167 (figura 3) e apenas 163 naquela com aceleração VirtIO-GL/VirGL 3D desabilitada (figura 4). Essa é uma grande diferença.

  Uma captura de tela de um computador Descrição gerada automaticamente

Figura 3: A pontuação “glmark2” da aceleração VirtIO-GL/VirGL 3D habilitada na máquina virtual Promox VE 8 quando a GPU NVIDIA RTX 4070 e a CPU AMD Ryzen 3900X (4 núcleos alocados para a máquina virtual) são usadas no Promox VE 8 servidor

  Uma captura de tela de um computador Descrição gerada automaticamente

Figura 4: A pontuação “glmark2” da aceleração VirtIO-GL/VirGL 3D desativada na máquina virtual Promox VE 8 quando a CPU AMD Ryzen 3900X (4 núcleos alocados para a máquina virtual) é usada no servidor Promox VE 8

Você também pode verificar se a máquina virtual Proxmox VE 8 está usando a GPU do seu servidor Proxmox VE 8 para aceleração 3D via VirIO-GL/VirGL se estiver usando uma GPU NVIDIA no servidor Proxmox VE 8.

Para encontrar os programas que estão usando a GPU NVIDIA do seu servidor Proxmox VE 8, abra o shell Proxmox VE e execute o comando “nvidia-smi”. Como você pode ver, uma das máquinas virtuais Proxmox VE 8 consome cerca de 194 MiB de VRAM da GPU NVIDIA RTX 4070 de nosso servidor Proxmox VE 8 para aceleração 3D.

  Uma captura de tela de um computador Descrição gerada automaticamente

Conclusão

Neste artigo, mostramos como instalar as bibliotecas necessárias em seu servidor Proxmox VE 8 para que a aceleração VirtIO-GL/VirGL 3D funcione. Também mostramos como configurar/habilitar a aceleração VirtIO-GL/VirGL 3D em uma máquina virtual Proxmox VE 8. Mostramos como verificar se a aceleração VirtIO-GL/VirGL 3D também está funcionando nas máquinas virtuais Proxmox VE 8. Por fim, comparamos a GPU VirtIO-GL/VirGL de uma máquina virtual Proxmox VE 8 usando “glmark2” para mostrar seu desempenho em comparação com uma máquina virtual Proxmox VE 8 com a aceleração 3D VirtIO-GL/VirGL desabilitada.