Meio Bit » Software » IA comeu toda a RAM? Otimize seu código!

IA comeu toda a RAM? Otimize seu código!

Com a IA devorando toda a cadeia produtiva de memórias DRAM e NAND, a arte da otimização de código voltou a entrar em voga

16 semanas atrás

A crise das memórias continua e não dá sinais de que irá enfraquecer tão cedo; a Micron, membro da "tríade" que domina o setor com Samsung e SK Hynix, acredita que o foco voltado às aceleradoras de Inteligência Artificial (IA) manterá a situação como está no mínimo até 2028.

Todo mundo que não trabalha com IA está tendo que rever seus planos de negócios, de empresas de computadores a fabricantes de consoles de videogame e TVs, soluções de infra, tudo o que usa DRAM (volátil) e NAND (armazenamento Flash) vai pastar igual pelos próximos anos. Até mesmo os preços HDs dispararam, e os estoques de Western Digital e Seagate para o ano de 2026 já se esgotaram (clientes corporativos foram atendidos com prioridade, claro).

IA anda com muita fome (Crédito: Grok/xAI/Ronaldo Gogoni/Meio Bit)

IA anda com muita fome (Crédito: Grok/xAI/Ronaldo Gogoni/Meio Bit)

Desenvolvedores estão vendo que a disponibilidade principalmente de RAM não será das melhores pelos próximos anos, o usuário final será obrigado a se virar com seu setup atuais por mais tempo, no que um velho fantasma voltou a pairar: a otimização de código.

IA, RAM, oferta e procura

A situação anda feia para todo mundo, e não são só donos de PCs mais modernos que estão sofrendo: além do fato de que os preços de memórias RAM DDR5, SSDs e HDs dispararam nos últimos meses, componentes mais antigos como RAM DDR4 e até DDR3 vêm sofrendo com reajustes exponenciais, dada a maior procura por usuários que desejam reabilitar setups antigos.

Não é segredo que o boom da IA levou a todas as grandes companhias a voltarem seus esforços para o setor, da Nvidia depreciando sua linha de GPUs gamer à Micron encerrando sua linha de RAM para o usuário final, passando pela Intel diminuindo o foco em processadores Core e a AMD buscando aumentar sua presença no setor. No processo, todo mundo que não é uma aceleradora de IA, ou não trabalha com soluções generativas, foi depreciado.

A crise obviamente não afeta apenas o usuário de PC, diversos setores já estão sentindo as consequências e vão rever seus planos: por exemplo, fontes próximas à Sony dizem que a companhia deve adiar o lançamento do PS6 para 2028 ou 2029, e a Nintendo considera fazer um reajuste substancial no preço final do Switch 2.

Empresas de soluções de infraestrutura, fabricantes de TVs, montadoras automotivas, todo mundo que lida com produtos que dependem de RAM e armazenamento Flash já estão sofrendo, e os custos serão invariavelmente repassados ao consumidor final, o elo mais fraco da corrente e aquele que sempre paga a conta, com produtos mais caros e menor disponibilidade, e com serviços piores, mais limitados, e também mais custosos.

Desenvolvedores de software estão no mesmo balaio, incluindo empresas menores que trabalham com IA, que tem menos bala na agulha para garantir estoques de componentes em comparação a gigantes como Microsoft, Meta, OpenAI e cia, e muitos vêm discutindo nos últimos meses retomar a sério a boa prática da otimização de código, abandonada após anos de fartura.

Fartura de componentes fez da otimização de código uma arte obscura; Murphy, claro, não perdoou (Crédito: Divulgação/Columbia Pictures/Wiedemann & Berg Film/Seven Pictures/Sony)

Fartura de componentes fez da otimização de código uma arte obscura; Murphy, claro, não perdoou (Crédito: Divulgação/Columbia Pictures/Wiedemann & Berg Film/Seven Pictures/Sony)

Justiça seja feita, o boom da IA foi só o último prego no caixão dos devs acostumados a muita RAM e muito espaço de armazenamento, carregados nas costas por instâncias e plataformas complexas que resolvem tudo por software. Claro que ninguém quer voltar a escovar bits e programar no Assembly quase que diretamente sobre o metal, mas como o Cardoso explicou no artigo sobre Vibe Coding, quem não sabe o básico não consegue programar do zero, está acostumado a IDEs prontas e acredita que Python é a solução para tudo.

A grande verdade, Python é uma linguagem generalista ótima, mas quem entende reconhece que ela é muito lenta por ser extremamente complexa, ela vai na contramão da estratégia KISS (Keep It Simple, Stupid), em que a simplicidade em design funcional deve ser prioridade. A linguagem C, que alguns acusaram de ser insegura (já parou de rir? Eu espero), se baseia em dois preceitos simples definidos por Dennis Ritchie e Ken Thompson:

  1. Simplicidade sobre segurança;
  2. Confie no programador (e se necessário, culpe ele).

A estrutura do C é simples para permitir fazer absolutamente tudo em código, mas cabe ao desenvolvedor implementar salvaguardas para repelir ataques, ou fazer crítica de dados para evitar os pequenos Bobby Tables da vida real. O Python é um canhão usado para matar formigas, enquanto C é um formicida.

Essa dependência de linguagens complexas e pouca crítica de dados era apoiada na desculpa "para que vou precisar otimizar se tenho espaço e RAM de sobra?", e bem, agora todo mundo está vendo por quê. Soluções consomem mais memória porque deveriam por preguiça dos devs, ao invés de partir da lógica "se roda bem usando um mínimo de 1 GB de RAM, escreva para rodar com 1 GB e não com 32 GB".

O Google Chrome é um clássico exemplo disso: ao tratar cada guia, extensão e plugin como um processo isolado, o que garante mais estabilidade no processamento (é só encerrar um processo problemático, ao invés de reiniciar o browser), o consumo de RAM escala quanto mais abas você usar; o navegador tem a tendência de ocupar mais da metade da RAM disponível, independente se são 2 GB, 16 GB ou 128 GB.

Programar é preciso. Sanitizar seu código também, independente de quanta RAM ou espaço você tenha (Crédito: Reprodução/United Artists/Sherwood Productions/UIP/MGM/Amazon)

Programar é preciso. Sanitizar seu código também, independente de quanta RAM ou espaço você tenha (Crédito: Reprodução/United Artists/Sherwood Productions/UIP/MGM/Amazon)

A situação também está afetando outros setores: estúdios de games já começaram a reduzir as recomendações mínimas de hardware para futuros lançamentos, cientes de que a maioria do público não vai queimar trocentos dólares em 32 GB de RAM para rodar um game da série LEGO, e fabricantes de dispositivos como TVs e outros eletrônicos terão que rever suas políticas de upgrades. Há quem inclusive defenda que companhias de celulares, Apple e Samsung inclusas, deveriam abandonar atualizações anuais de hardware.

O bom dessa história é que a otimização e sanitização de código, quase considerados uma arte perdida, estão voltando à mesa ainda que por necessidade de sobrevivência: quem não se adaptar e não conseguir entregar soluções com o pouco hardware disponível, o que também afeta startups de IA menores, será varrido para fora do mercado.

relacionados


Comentários