Otimizando o uso de memória com IA

Programação assistida por IA avançada para desenvolvedores

Thalia Barrera

AI Engineering Curriculum Manager, DataCamp

Da complexidade de tempo à de espaço

 

Performance não é só velocidade:

  • Uso de memória
  • Escalabilidade
  • Crescimento de dados ao longo do tempo

Complexidade de tempo para espaço

Programação assistida por IA avançada para desenvolvedores

Testando em escala

Comparação de escala de banco de dados

 

  • ✔ Dataset pequeno: bom pra aprender
  • 📈 Problemas de memória: aparecem em escala
  • 💾 Banco real: mais próximo da produção
Programação assistida por IA avançada para desenvolvedores

Alerta de crescimento de memória

crescimento de memória.png

Programação assistida por IA avançada para desenvolvedores
Programação assistida por IA avançada para desenvolvedores
Programação assistida por IA avançada para desenvolvedores

IA interpreta os rastros de memória

 

interpretação do tracemalloc

 

Achado da IA:

  • Grande memória retida
  • Estruturas intermediárias repetidas
  • Durante operações de agregação
Programação assistida por IA avançada para desenvolvedores

Causa raiz identificada

Causa raiz

Programação assistida por IA avançada para desenvolvedores

IA propõe correções

 

🤖 Prompt de gargalo de memória:

Com base no gargalo de memória identificado, sugira refatorações para reduzir o pico de uso. Considere streaming, reúso de dados ou representações alternativas.

 

Estratégias propostas:

  • Reduzir alocações intermediárias
  • Reusar buffers
  • Incluir cache
Programação assistida por IA avançada para desenvolvedores

Trade-offs do cache

Balanço de trade-offs de cache

 

Cuidado com cache:

  • ✔ Pode melhorar performance
  • ❌ Também pode aumentar a memória
Programação assistida por IA avançada para desenvolvedores

Trade-offs do cache

 

🤖 Prompt de comparação de trade-offs:

Dado esse workload e padrão de acesso, uma estratégia de cache reduziria o uso total de memória ou pode piorar? Explique os trade-offs

sugestão de cache da ia.png

Programação assistida por IA avançada para desenvolvedores

Implementação pela IA

correções de código com ia.png

 

Como sempre:

  • Revise com cuidado
  • Valide antes de aceitar mudanças
Programação assistida por IA avançada para desenvolvedores

Resultados da validação

 

Execução do benchmark:

benchmark de memória

Resultados:

  • Pico de memória cai bastante
  • Tempo de execução fica estável
  • ✅ Otimização validada
Programação assistida por IA avançada para desenvolvedores

Prompts de benchmark

🤖 Prompt de benchmark:

Você é especialista em performance Python. Abaixo estão dois snapshots do tracemalloc, antes e depois de uma mudança.

  • Antes: {before_snapshot}
  • Depois: {after_snapshot}

Compare o pico de memória e a contagem de alocações. Justifique com números. Se melhorou, explique por quê. Se não, sugira o que corrigir.

 

Prompts de benchmark eficazes:

  • Forneça antes/depois
  • Especifique quais métricas importam
  • Peça conclusões baseadas em evidências

 

✔ Torna a otimização repetível e sistemática

Programação assistida por IA avançada para desenvolvedores

Vamos praticar!

Programação assistida por IA avançada para desenvolvedores

Preparing Video For Download...