A AMD começou a promover um software chamado Mext: em servidores Epyc, ele usa flash NVMe para substituir parte da DRAM e se apoia em um modelo de IA que prevê quais páginas de memória serão usadas em breve, trazendo-as de volta à RAM antes que o sistema operacional e as aplicações percebam. Segundo a AMD, com metade da DRAM trocada por flash, algumas cargas ainda conservam até 99% do desempenho, e o custo de servidores corporativos pode cair até 83%.
A Mext era originalmente uma empresa independente; a AMD adquiriu a tecnologia em junho deste ano. Gary Smerdon, ex-CEO da Mext e hoje vice-presidente de desenvolvimento de negócios da AMD, disse ao The Register que o software já está implantado nos primeiros 145 sistemas. Pelas contas dele, os clientes já economizaram cerca de 5 milhões de dólares em compras de DRAM.
Por que ninguém ousa ligar o swap tradicional
Boa parte da memória “ocupada” de um servidor não está realmente em uso. Smerdon cita um estudo da Meta segundo o qual de 50% a 80% das páginas de memória ficam cinco minutos, dez minutos ou mais sem serem acessadas. Nas palavras dele: “Cinco minutos são uma eternidade para um Epyc.”
Mover páginas frias para um meio mais barato segue a mesma lógica do swap dos sistemas operacionais e do arquivo de paginação do Windows. O problema é a velocidade: pelos números de Smerdon, o flash custa cerca de 50 vezes menos por bit que a DRAM e consome cerca de 30 vezes menos energia, mas é cerca de 500 vezes mais lento. O swap tradicional só busca a página no disco quando o programa a requisita; a latência dispara, os acordos de nível de serviço (SLA) deixam de ser cumpridos e, por isso, as equipes de operação costumam desligá-lo sempre que podem.
A abordagem da Mext é trazer as páginas de volta antes de a demanda surgir. “Fazemos o flash parecer DRAM de forma transparente”, resume Smerdon. No exemplo dele, um servidor Epyc que normalmente teria 2 TB de memória pode comprar apenas 1 TB, e o outro 1 TB é complementado pela Mext com flash.
O modelo de previsão é treinado na própria CPU
O modelo principal responsável pela previsão é uma variante da arquitetura Transformer. A analogia de Smerdon: um grande modelo de linguagem prevê a próxima palavra, e este prevê a próxima página de memória a ser usada. Desde que a página já esteja de volta à DRAM antes de ser acessada, uma ordem um pouco embaralhada não faz diferença.
Os padrões de acesso à memória variam conforme a carga, então pré-treinar um modelo genérico não é viável. A Mext usa um núcleo Epyc para treinar uma primeira versão em menos de um segundo e continua retreinando durante a execução até as previsões ficarem precisas o bastante. Todo o processo usa apenas CPU, sem GPU, de modo que, em teoria, qualquer cliente Epyc pode usá-lo.
O custo também está aí. O The Register observa que, em ambientes virtualizados, o software ocupa um núcleo por máquina virtual: quanto mais VMs, mais núcleos consumidos. Se o mesmo vale para cenários com contêineres, a AMD ainda não respondeu ao veículo.
Os números de desempenho dependem da carga
Smerdon diz que, depois de retirar as páginas frias, “não há absolutamente nenhum impacto no desempenho”; as medições da própria AMD são mais conservadoras:
- Synopsys PrimeTime (ferramenta de EDA usada em projeto de chips): com metade da memória trocada por flash, o desempenho é de 95% em relação a uma configuração só com DRAM; com apenas 25% de DRAM e 75% de flash, cai para 80%.
- Apache Spark: com metade da DRAM trocada por flash, o desempenho se mantém em 99%.
Softwares de EDA consomem muita memória, mas os dados efetivamente processados pelos núcleos de cálculo em cada instante costumam ser de apenas alguns MB, razão pela qual a Mext começou por eles. Depois, o suporte foi ampliado para bancos de dados e pipelines de inferência de agentes, cenários sensíveis à latência; os números destes últimos não foram divulgados desta vez, e ainda não há testes independentes.
Uma conta aproximada do custo da máquina inteira
Smerdon afirma que, no custo de servidores com muita memória, ela representa de forma conservadora de seis a sete décimos, e em máquinas com memória gigantesca chega a oito ou nove décimos. Fazendo uma conta aproximada com o exemplo de 2 TB: supondo que a memória responda por 70% do custo da máquina, cortando metade da DRAM e colocando no lugar um flash com preço unitário de cerca de um cinquenta avos, e sem contar a licença da Mext, o custo total cai pouco mais de trinta por cento. O teto de 83% deve corresponder a configurações em que a memória pesa mais e a proporção trocada é maior; a AMD não divulgou o cálculo.
A licença ainda é uma incógnita. A Mext só roda em hardware AMD e será vendida como licença junto com os servidores Epyc por meio de OEMs como a HPE; o preço não foi anunciado. No Linux basta instalar um driver de kernel; a AMD oferece ainda uma ferramenta chamada RAM View, que ajuda as empresas a decidir quais máquinas e cargas são adequadas para ativar a Mext.
A expansão dos data centers de IA mantém a memória escassa, e a AMD aposta que os clientes aceitarão perder alguns pontos percentuais de desempenho em troca de uma fatia grande do orçamento de memória. Segundo o plano da empresa, estamos na primeira fase, em que se trabalha com os OEMs para deixar as máquinas “Mext ready”; só na segunda fase as licenças serão vendidas e o RAM View virá pré-instalado nas máquinas Epyc de fábrica.
Fontes: entrevista do The Register com Gary Smerdon, CocoLoop, estudo da Meta sobre acesso à memória; as proporções de desempenho, as 145 implantações e a redução de custo de 83% são números da AMD.