Novos aceleradores para servidores, estações de trabalho e dispositivos Edge já estão disponíveis no mercado e abrangem uma ampla gama de requisitos de aplicações para IA e HPC. As escolhas e o desempenho continuam a aumentar. Enquanto os fornecedores de aceleradores lançam novos aceleradores, o cenário está mudando com as ofertas mais recentes, uma CPU integrada e uma GPU.
IA, HPC e vários outras aplicações compartilham alguns requisitos comuns, mas escolher o tipo adequado de acelerador e a arquitetura do sistema pode afetar significativamente o desempenho e o preço do servidor.
Quando instalados nos servidores atuais, os aceleradores podem ser categorizados em três grupos distintos. As opções típicas (vários fornecedores de sistema, vários fornecedores de aceleradores) consistem em:
Aceleradores integrados: Cada acelerador tem uma conexão de alta velocidade com outros aceleradores
Aceleradores que utilizam interconexões PCIe: as CPUs se comunicam com aceleradores por PCIe e os aceleradores não têm conexão direta com outros aceleradores
Aceleradores que utilizam interconexões PCIe e pequenos integrados: Cada acelerador pode se comunicar com um outro acelerador por meio de uma conexão direta, mas o método de comunicação principal é sobre PCIe
Aceleradores integrados a uma CPU: Uma CPU é fortemente acoplada a um acelerador por meio de uma conexão de alta velocidade. Apenas uma CPU e um acelerador podem ter essa conexão estreita. No entanto, os sistemas ainda podem acomodar um ou mais aceleradores PCIe, dependendo do design
O treinamento de IA em grande e média escala é baseado na digestão de enormes quantidades de dados e na determinação progressiva de uma resposta. Cada acelerador deve se comunicar com outros aceleradores em alta velocidade para analisar grandes quantidades de dados não estruturados.
AI Inferencing é a parte de decisão da IA. Depois que um modelo é treinado, um novo conjunto de dados pode ser enviado ao sistema e uma resposta ou recomendação será feita. A inferência de IA é um cálculo de computação relativamente rápido, em que um servidor com muitos aceleradores independentes funciona melhor.
As aplicações HPC podem ser acelerados enviando tarefas de computação intensivas aos aceleradores para realizar os cálculos para determinadas partes do aplicação. Partes do aplicação que podem ser feitas em muitos elementos de computação paralela mostrarão acelerações significativas ao usar aceleradores. Em muitos aplicações de HPC, um conjunto de dados trabalhados pelo acelerador é relativamente independente do outro trabalho feito por um acelerador diferente.
As interfaces de desktop virtual (VDIs) permitem que um servidor central controle o desktop em dispositivos cliente. Um acelerador acelera a computação e a entrega dos pixels aos dispositivos clientes. O modelo PCIe se destaca nessa carga de trabalho, pois cada dispositivo cliente normalmente é independente de outros dispositivos cliente.
A visualização refere-se à renderização na tela. Os aceleradores são excelentes para acelerar o processo de renderização, pois muitos cálculos de renderização podem ser feitos em paralelo. As aplicações de visualização podem utilizar vários aceleradores, mas não precisam que os aceleradores se comuniquem entre si.
O Content Delivery requer aceleração para compactar vídeos enviados para dispositivos cliente em vários formatos, com um SLA específico para o dispositivo cliente. Os aceleradores podem lidar com vários fluxos simultaneamente e operar de forma independente para que uma solução PCIe possa ser usada.
1 - Aceleradores integrados entre si
A arquitetura de mais alto desempenho para desempenho de IA é um sistema que permite que os aceleradores se comuniquem entre si sem precisar se comunicar com a CPU. Esse tipo de sistema requer que os aceleradores sejam montados em seu próprio rodapé com um interruptor de alta velocidade no próprio rodapé. A comunicação inicial que inicializa a aplicação executado nos aceleradores é feita por meio de um caminho PCIe. Quando concluídos, os resultados também são enviados de volta para a CPU via PCIe. A comunicação CPU-acelerador deve ser limitada, permitindo que os aceleradores se comuniquem entre si por caminhos de alta velocidade.
Uma solicitação de um acelerador é feita diretamente ou por meio de um switch sem bloqueio (4 deles) e enviada para a GPU apropriada. O desempenho de GPU para GPU é significativamente maior do que usar o caminho PCIe, que permite que as aplicações usem mais de uma GPU para um aplicação sem a necessidade de interagir com a CPU nas pistas PCIe relativamente lentas.
Principais vantagens:
- Modelos muito grandes que exigem muita memória para armazenar os parâmetros podem ser treinados. Cada acelerador pode adquirir e operar rapidamente em dados que podem residir em um acelerador diferente.
- Cada acelerador pode se comunicar diretamente com outros aceleradores.
- Os sistemas atuais que podem ser expandidos (após a expansão do servidor) estão sendo criados. Os aceleradores em um servidor poderão se comunicar e compartilhar dados com os aceleradores que residem em outro servidor.
2 - Aceleradores usando a interconexão PCIe
Uma interface comum e bem definida entre CPUs e aceleradores é a comunicação por meio de pistas PCIe. Essa arquitetura permite várias configurações no servidor e o número de aceleradores. Servidores pequenos podem acomodar até quatro dispositivos, enquanto servidores maiores podem abrigar até 10 aceleradores. Diferentes arquiteturas de servidor podem usar as configurações de modo direto, raiz única ou raiz dupla.
Uma abordagem híbrida que incorpora os benefícios da arquitetura PCIe e dos aceleradores integrados também é possível, em que duas placas PCIe estão intimamente ligadas.
Principais vantagens:
- Expansível em um servidor de uma a 10 GPUs
- Atribuição de tarefas independentes ao número de aceleradores.
- O desempenho pode aumentar à medida que aceleradores adicionais são adicionados a uma configuração básica.
- Configurações diretas, de raiz única e de raiz dupla para diferentes cargas de trabalho
3 - GPUs e CPUs integradas
Uma nova arquitetura que integra uma CPU e um acelerador já está disponível e permitirá novos aplicações que dependem de conexões de alto desempenho entre uma CPU e uma GPU. O desempenho entre a CPU e a GPU se aproxima de um TB por segundo, o que permite um acoplamento próximo entre o que a CPU foi projetada e a GPU foi projetada. Além disso, um espaço de memória compartilhado entre a CPU e a GPU pode permitir uma nova classe de aplicações sem esperar pela rede de comunicação PCIe relativamente lenta.
Principais vantagens:
- As partes da CPU e do acelerador da aplicação podem compartilhar memória, aumentando o desempenho.
- Modelo de programação simplificado para espaços de memória
- Comunicação muito rápida entre CPU e GPU
Saiba mais sobre os servidores GPU da Supermicro aqui.
Comments