Como DPUs são organizados, coprocessadores para processamento de dados



ASICs dedicados para áreas específicas são uma forma de "reiniciar" a Lei de Moore e superar as limitações das CPUs de uso geral. Agora é uma área muito promissora para o desenvolvimento da microeletrônica. Google, Amazon e outras empresas têm seus próprios projetos. Por exemplo, o Google fabrica os processadores de tensor TPU do Google e os data centers da Amazon executam chips AWS Graviton no núcleo ARM.



Os primeiros são ASICs para redes neurais e os últimos são ARMs de 64 bits de uso geral para otimizar a relação preço-desempenho em cargas de trabalho de computação intensiva.



Outra classe de ASICs de uso geral, onde experimentos ativos têm acontecido recentemente, são coprocessadores especializados para processamento de dados (unidades de processamento de dados, DPU), uma espécie de cartões de rede inteligentes (SmartNIC). Alguns exemplos dessa espécie são Nvidia BlueField 2, Fungible e Pensando DSC-25.



Como eles são? Para quais tarefas eles são adequados? Vamos dar uma olhada.





O que é SmartNIC



As placas de rede convencionais (NICs) são construídas em um circuito integrado de propósito especial (ASIC), que é projetado para operar como um controlador Ethernet. Freqüentemente, esses microcircuitos são projetados para desempenhar funções secundárias. Por exemplo, os controladores Mellanox ConnectX também suportam o protocolo Infiniband de alta velocidade. Esses são ótimos chips especializados, mas sua funcionalidade não pode ser alterada.



Ao contrário das placas de rede simples, o SmartNIC permite que o usuário baixe software adicional para o controlador, ou seja, após a compra do hardware. Isso expande ou altera a funcionalidade do ASIC. O procedimento é algo semelhante a comprar um smartphone e instalar vários aplicativos nele.



Para tornar isso possível, os SmartNICs exigem mais poder de processamento e memória adicional do que os NICs convencionais. Estamos falando de processadores ARM multi-core mais poderosos, da instalação de processadores de rede especializados (núcleos de processamento de fluxo, FPC) e matrizes de portas programáveis ​​em campo (FPGA).





Os



SmartNICs esquemáticos Xilinx Alveo U25 geralmente têm um núcleo ARM separado para o plano de controle, algumas placas permitem carregar um kernel Linux modificado. Esses núcleos ARM dedicados distribuem a carga pelo resto dos módulos de computação, coletam estatísticas e logs e monitoram o estado do SmartNIC. O tráfego direto da rede não passa por eles.



Para quais tarefas os DPUs são adequados?



Os coprocessadores de dados (DPUs) são uma extensão típica dos SmartNICs que adicionam a funcionalidade NVMe ou NVMe sobre telas (NVMe-oF). Essa placa permite que você descarregue o processador central, assumindo todas as tarefas de E / S.



Por exemplo, considere o dispositivo SmartNIC do microcontrolador Broadcom NetXtreme-S BCM58800 . Funciona como placa de rede programável e suporta (NVMe-oF).





Arquitetura da placa Broadcom Stingray baseada no microcontrolador BCM58800



Broadcom Stingray tem oito núcleos ARM v8 A72 a 3 GHz, sem dúvida a maior velocidade de clock de qualquer ARM em qualquer SmartNIC. A placa de rede vem com até 16 GB de memória DDR4. A criptografia de até 90 Gbps é suportada no nível do hardware e algumas funções de processamento de dados são suportadas: deduplicação, que remove a codificação de RAID 5 e RAID 6.



O diagrama também mostra o acelerador TruFlow. É uma tecnologia proprietária da Broadcom para aceleração de hardware de operações de rede, incluindo Open vSwitch (OvS) e muito mais.



Nvidia BlueField 2



A Nvidia se especializou tradicionalmente em aceleradores gráficos, mas este ano concluiu uma aquisição de US $ 7 bilhões da fabricante de chips especializados Mellanox, então agora está seriamente almejando um novo campo de computação de alto desempenho de data center.



A Mellanox é uma das pioneiras no desenvolvimento de cartões de rede inteligentes, e a placa BlueField 2 , que é comercializada como Unidade de Processamento de Dados (DPU), é hoje considerada o produto líder . Principais aplicativos DPU da





arquitetura Nvidia / Mellanox BlueField 2



:



  • Nuvens virtuais e de hardware.
  • Armazenamento NVMe em máquinas virtuais.
  • Aplicativos de Network Function Virtualization (NFV).
  • Aplicativos de segurança da informação, como Deep Packet Inspection (DPI).
  • Microsservidores para computação de ponta




Nvidia / Mellanox BlueField 2



apresenta uma matriz de oito núcleos ARM v8 A72, um controlador de memória DDR4 e um adaptador de rede Ethernet ou InfiniBand de porta dupla (dois a 100 Gbps ou um a 200 Gbps), além de ASICs especializados para acelerar várias funções: expressões regulares, hashing SHA-2, etc.



Pensando



Uma das novas startups na área de SmartNIC é a Pensando, que oferece no mercado o chamado Cartão de Serviços Distribuídos, Pensando DSC-25 (para servidores corporativos) e Pensando DSC-100 (para provedores de nuvem).



Pensando DSC-25 e Pensando DSC-100



O produto principal é a Pensando DSC-25. É uma placa com um P4 (Capri) DPU para processamento de dados, núcleos ARM adicionais e aceleradores de hardware para funções selecionadas.





Circuito Pensando DSC-25



Os principais núcleos DPU e ARM são conectados por meio de um barramento de interconexão comum a um controlador PCIe e uma matriz de RAM (até 4 GB).

Os aceleradores de hardware individuais são chamados aqui de Descargas de Processamento de Serviço. Tal como acontece com o cartão Mellanox, eles lidam com criptografia, processamento de disco e outras tarefas.



Fungível





A arquitetura de alto nível da Fungible



Outra startup emergente, a Fungible, afirma que criou o termo DPU em 2016. A empresa anuncia um processador chamado F1 DPU, mas a arquitetura real desses chips é desconhecida. A Fungible só pode demonstrar esquemas gerais até agora, como na ilustração acima. Alguns especialistas expressaram sua suspeita de que a Fungible está simplesmente usando o termo DPU para atrair investimentos de capital de risco. Aliás, US $ 500 milhões já foram investidos nele em várias rodadas.



Qual é o próximo?



Ultimamente tem havido muito hype em torno do conceito DPU. Nem todas as empresas que estão tentando entrar neste mercado (Intel, Xilinx e outras) são mencionadas nesta análise.



O fato é que o conceito SmartNIC já existe há muito tempo e grandes empresas como Google e Amazon desenvolveram e implementaram suas próprias soluções internas. Ao mesmo tempo, formou-se um mercado, que foi preenchido por terceiros.



A segunda geração do SmartNIC baseado em FPGA está surgindo. A tecnologia de array de portas programáveis ​​pelo usuário amadureceu a ponto de agora se tornar a tecnologia fundamental para SmartNICs. Uma década atrás, o mercado foi literalmente inundado com aceleradores gráficos - esta foi a primeira onda significativa em tecnologia de aceleração de hardware. Agora que os FPGAs ultrapassaram a marca de três milhões de blocos lógicos, esses chips estão totalmente integrados a outros blocos de construção para lidar com o tráfego de rede, memória, armazenamento e núcleos de computação. As tecnologias SmartNIC e FPGA se complementam perfeitamente.



Neste contexto, uma segunda onda de aceleradores de hardware pode ser esperada. E então o terceiro elemento, DPU, será adicionado ao conjunto CPU + GPU. O coprocessador de dados liberará os processadores de servidor das tarefas de infraestrutura. A pesquisa mostra que em ambientes altamente virtualizados, os processos de rede, como transações OvS, podem consumir mais de 30% do tempo da CPU no host. Imagine operações de disco, criptografia, DPI e roteamento complexo feitos em um módulo separado. Isso potencialmente removerá uma parte significativa da carga da CPU.

Startups como Pensando e Fungible enfrentaram líderes em tecnologia como Xilinx, Intel, Broadcom e Nvidia com suas inovações. Esta é uma competição tecnológica que é sempre divertida de assistir.



All Articles