Não é segredo que as CPUs do servidor Epyc da AMD estão vendendo como pão quente, a ponto de a Intel ter que fazer grandes descontos nos chips Xeon para impedir que clientes existentes e potenciais de hiperescala optem pelo Team Red. 

Dito isso, há um motivo pelo qual as organizações estão cada vez mais buscando opções e, em alguns casos, escolhendo a AMD em vez da Intel quando se trata de construir sua infraestrutura de data center.

AMD Epyc na Netflix

Recentemente, o engenheiro de software sênior da Netflix, Drew Gallatin, ofereceu alguns insights valiosos sobre os esforços da empresa para otimizar a arquitetura de hardware e software que possibilita o streaming de enormes quantidades de entretenimento de vídeo para mais de 209 milhões de assinantes. A empresa conseguiu extrair até 200 Gb por segundo de um único servidor, mas ao mesmo tempo queria aumentar ainda mais as coisas.

Os resultados desses esforços foram apresentados na conferência EuroBSD 2021. Gallatin disse que a Netflix foi capaz de enviar conteúdo a até 400 Gb por segundo usando uma combinação de CPUs AMD de 32 núcleos Epyc 7502p (Roma), 256 gigabytes de memória DDR4-3200, 18 drives Western Digital SN720 NVMe de 2 terabytes e dois adaptadores de rede PCIe 4.0 x16 Nvidia Mellanox ConnectX-6 Dx, cada um capaz de acomodar duas conexões de 100 Gb.

Para se ter uma ideia da taxa de transferência máxima teórica deste sistema, existem oito canais de memória fornecendo uma largura de banda de cerca de 150 gigabytes por segundo, e 128 pistas PCIe 4.0 permitindo até 250 gigabytes de largura de banda de E / S. Em unidades de rede, isso é cerca de 1,2 Tb por segundo e 2 Tb por segundo, respectivamente. 

Também é importante notar que é isso que a Netflix usa para servir seu conteúdo mais popular.

Essa configuração normalmente pode servir conteúdo de até 240 Gb por segundo, principalmente devido às limitações de largura de banda da memória. 

A Netflix então tentou diferentes configurações de Non Uniform Memory Architecture (NUMA), com um nó NUMA sendo capaz de 240 Gb por segundo e quatro nós NUMA produzindo cerca de 280 Gb por segundo.

Netlix NUMA

No entanto, essa abordagem vem com uma série de problemas próprios, como latências mais altas. 

O ideal é manter o máximo possível de dados em massa fora do NUMA Infinity Fabric para evitar congestionamentos e paralisações de CPU como resultado da competição com acessos de memória normais.

A empresa também analisou o siloing de disco e o siloing de rede. Isso significa essencialmente tentar fazer tudo no nó NUMA onde o conteúdo está armazenado ou no nó NUMA escolhido pelo parceiro LACP. 

No entanto, isso complica ainda mais as coisas ao tentar equilibrar todo o sistema e leva a um Infinity Fabric subutilizado.

Gallatin explicou que contornar essas limitações era possível usando otimizações de software. Ao descarregar as tarefas de criptografia TLS para os dois adaptadores Mellanox, a empresa aumentou a taxa de transferência total para 380 Gb por segundo (até 400 com ajustes adicionais), ou 190 Gb por segundo por placa de interface de rede (NIC). 

Como a CPU não precisa mais realizar nenhuma criptografia, a utilização geral caiu para 50 por cento com quatro nós NUMA e 60 por cento sem NUMA.

A Netflix explorou configurações baseadas em outras plataformas também, incluindo uma com CPU Xeon Platinum 8352V (Ice Lake) da Intel e Altra Q80-30 da Ampere – um gigante com 80 núcleos Arm Neoverse N1 rodando a até 3 GHz. 

A base de teste do Xeon foi capaz de atingir modestos 230 Gb por segundo sem descarregamento de TLS, e o sistema Altra atingiu 320 Gb por segundo.

Não contente com o resultado de 400 Gb por segundo, a empresa já está construindo um novo sistema que deve lidar com conexões de rede de 800 Gb por segundo. 

No entanto, alguns dos componentes necessários não chegaram a tempo de realizar nenhum teste, então ouviremos mais sobre isso no próximo ano.

Deixe uma resposta

Exit mobile version