Situação: GPUs virtuais não ficam atrás das soluções físicas em desempenho

Em fevereiro, ocorreu uma conferência em Stanford dedicada a computação de alto desempenho (HPC). Representantes da VMware informaram que, ao trabalhar com GPU, o sistema baseado em um hipervisor ESXi modificado não fica atrás das soluções bare metal em termos de velocidade.

Abordamos as tecnologias que possibilitaram isso.

Situação: GPUs virtuais não ficam atrás das soluções físicas em desempenho
/ фото Victorgrigas CC BY-SA

Problema de desempenho

De acordo com analistas, cerca de 70% das cargas de trabalho em data centers são virtualizadas. No entanto, os 30% restantes ainda operam em bare metal sem hipervisores. Esses 30% consistem, em grande parte, em aplicações de alto desempenho, como o treinamento de redes neurais, que utilizam processadores gráficos.

Esse tendência é explicada por especialistas pelo fato de que o hipervisor, como uma camada intermediária de abstração, pode afetar o desempenho de todo o sistema. Estudos de cinco anos atrás revelam dados sobre uma redução de velocidade de 10%. Por isso, empresas e operadores de data centers não estão com pressa em migrar cargas de HPC para ambientes virtuais.

Entretanto, as tecnologias de virtualização estão evoluindo e se aperfeiçoando. Na conferência do mês passado, a VMware informou que o hipervisor ESXi não tem impacto negativo no desempenho da GPU. A velocidade de computação pode diminuir em três por cento, o que é comparável às métricas de bare metal.

Como funciona

Para melhorar o desempenho de sistemas HPC com processadores gráficos, a VMware implementou várias mudanças no hipervisor. Em particular, ele foi desligado da função vMotion. Essa função é necessária para equilibrar a carga e geralmente transfere máquinas virtuais (VMs) entre servidores ou GPUs. Desativar o vMotion fez com que cada VM agora fosse vinculada a um processador gráfico específico. Isso ajudou a reduzir os custos de troca de dados.

Outro componente chave do sistema é a tecnologia DirectPath I/O. Ela permite que o driver CUDA para computação paralela interaja diretamente com as máquinas virtuais, contornando o hipervisor. Quando várias VMs precisam ser executadas em uma única GPU, a solução GRID vGPU é utilizada. Ela divide a memória da placa em vários segmentos (mas os ciclos de computação não são divididos).

O funcionamento de duas máquinas virtuais neste caso será o seguinte:

Situação: GPUs virtuais não ficam atrás das soluções físicas em desempenho

Resultados e previsões

Empresa realizou testes hipervisor, treinando um modelo de linguagem com base TensorFlow. O "dano" ao desempenho foi de apenas 3–4%, em comparação ao bare metal. Em contrapartida, o sistema ganhou a capacidade de alocar recursos sob demanda, dependendo das cargas atuais.

O gigante da TI também realizou testes com contêineres. Os engenheiros da empresa treinaram redes neurais para reconhecer imagens. Nesse processo, os recursos de uma única GPU foram alocados entre quatro VMs contêinerizadas. Como resultado, o desempenho de máquinas individuais caiu em 17% (em comparação a uma VM com acesso total aos recursos da GPU). No entanto, o número de imagens processadas por segundo aumentou três vezes. Espera-se que sistemas desse tipo encontrem aplicação na área de análise de dados e modelagem computacional.

Entre os problemas potenciais que a VMware pode enfrentar, especialistas destacam um público alvo bastante restrito. Até o momento, um número reduzido de empresas utiliza sistemas de alto desempenho. Embora no Statista observam, que até 2021, 94% das cargas de trabalho globais já estariam virtualizadas. Segundo previsões de analistas, o valor do mercado de HPC deverá crescer de 32 para 45 bilhões de dólares entre 2017 e 2022.

Situação: GPUs virtuais não ficam atrás das soluções físicas em desempenho
/ фото Ponto de Acesso Global PD

Soluções semelhantes

No mercado, existem várias alternativas, desenvolvidas por grandes empresas de TI: AMD e Intel.

A primeira empresa para virtualização de GPUs oferece adota uma abordagem baseada em SR-IOV (virtualização de entrada/saída de raiz única). Essa tecnologia oferece às VMs acesso a parte das capacidades de hardware do sistema. A solução permite dividir a GPU entre 16 usuários com desempenho igual das VMs virtualizadas.

Quanto ao segundo gigante da TI, sua tecnologia é baseada no hipervisor Citrix XenServer 7. Ela combina a operação do driver padrão da GPU com a máquina virtual, permitindo que esta exiba aplicativos 3D e desktops em dispositivos de centenas de usuários.

O futuro da tecnologia

Desenvolvedores de GPUs virtuais apostam na implementação de sistemas de IA e no crescimento da popularidade de soluções de alto desempenho no mercado de tecnologia empresarial. Eles esperam que a necessidade de processar grandes volumes de dados aumente a demanda por vGPUs.

Atualmente, os fabricantes procuram uma maneira unir a funcionalidade de CPU e GPU em um único núcleo para acelerar a solução de tarefas relacionadas a gráficos, realizar cálculos matemáticos, operações lógicas e processamento de dados. A chegada desses núcleos no mercado no futuro mudará a abordagem em relação à virtualização de recursos e sua distribuição entre cargas de trabalho em ambientes virtuais e em nuvem.

O que ler sobre o assunto em nosso blog corporativo:

Alguns posts de nosso canal no Telegram:

Fonte: habr.com

Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS 🔥 Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS | ProHoster