VRAM

A VRAM (sigla para Video Random Access Memory, ou Memória de Acesso Aleatório de Vídeo) é um tipo especial de memória RAM de altíssima velocidade dedicada exclusivamente ao processamento gráfico e a operações de computação paralela intensa, como o treinamento e a inferência de redes neurais e Grandes Modelos de Linguagem (LLMs).

A VRAM fica localizada fisicamente ao lado do chip da GPU (Processador Gráfico) na placa de vídeo.

Por que a VRAM é Crucial para LLMs?

Em modelos de aprendizado de máquina, o gargalo de desempenho raramente é a velocidade de cálculo bruto das operações matemáticas, mas sim a largura de banda de memória (o tempo que o sistema leva para mover bilhões de parâmetros matemáticos da memória para os núcleos de processamento).

  • RAM Comum (DDR5): Possui taxas de transferência na casa dos 60 a 100 GB/s.
  • VRAM Dedicada (GDDR6X / HBM3): Alcança taxas de transferência entre 1.000 GB/s (1 TB/s) a mais de 3 TB/s.

Para gerar cada token de resposta, uma LLM precisa ler a matriz inteira de pesos da rede neural na memória. A largura de banda gigante da VRAM é o que permite que essa leitura ocorra em milissegundos.

Como a VRAM é Consumida por uma LLM?

Quando você carrega uma LLM para execução local ou servidor, a VRAM é dividida em três blocos principais: (A) Pesos do Modelo (Weights); (B) KV Cache (Janela Contexto); e (C) Memória de Trabalho (Activation Buffers):

  • Os Pesos do Modelo (Static Weights): espaço fixo ocupado pela matriz de parâmetros do modelo carregado. Depende diretamente do número de parâmetros e do nível de precisão/quantização dos números:
    • Precisão FP16 (16 bits = 2 bytes por parâmetro): Um modelo de 8B de parâmetros ocupa 8×2=𝟏𝟔 GB8 \times 2 = \mathbf{16\text{ GB}} de VRAM.
    • Quantização INT4 (4 bits = 0,5 byte por parâmetro): O mesmo modelo de 8B comprimido para 4 bits ocupa 8×0.5=𝟒 GB8 \times 0.5 = \mathbf{4\text{ GB}} de VRAM.
  • O KV Cache (Key-Value Cache): A medida que a conversa avança, o mecanismo de atenção precisa lembrar dos tokens anteriores para não refazer os cálculos a cada novo token. Esses vetores de Keys e Values são mantidos na VRAM.
    • Quanto maior a Janela de Contexto (ex: 8k, 32k ou 128k tokens) e maior o tamanho do batch (usuários simultâneos), mais VRAM o KV Cache consome.
  • Buffers de Ativação (Work Area): Espaço temporário reservado para realizar as operações de álgebra linear (multiplicações de matrizes) e armazenar estados intermediários das camadas durante a inferência ou treino.

Estimativa Prática de Necessidade de VRAM

Uma regra geral rápida para calcular quanta VRAM você precisa apenas para carregar e rodar a inferência de um modelo:

VRAM Mínima (GB)(Nº de Parâmetros em Bilhões)×(Bytes por Parâmetro)×1.2\text{VRAM Mínima (GB)} \approx (\text{Nº de Parâmetros em Bilhões}) \times (\text{Bytes por Parâmetro}) \times 1.2

(O fator 1.2 adiciona uma margem de 20\% de segurança para o KV Cache e os buffers de ativação).

Tamanho do ModeloPrecisão FP16Quantização Q8 (8-bits)Quantização Q4 (4-bits)
7B / 8B Parâmetros (ex: Llama 3 8B)~18 GB VRAM~10 GB VRAM~6 GB VRAM
14B Parâmetros (ex: Qwen 14B)~32 GB VRAM~16 GB VRAM~10 GB VRAM
70B Parâmetros (ex: Llama 3 70B)~150 GB VRAM~75 GB VRAM~42 GB VRAM

Tipos Principais de Tecnologias de VRAM

Existem duas famílias principais de memória usadas em hardware de IA:

  • GDDR (Graphics Double Data Rate):
    • Onde é usada: Placas de vídeo comerciais e workstations (Série NVIDIA RTX 3000/4000, AMD Radeon).
    • Versões Atuais: GDDR6 e GDDR6X.
    • Características: Excelente relação custo-benefício, placas com capacidades típicas de 8 GB, 12 GB, 16 GB e 24 GB.
  • HBM (High Bandwidth Memory)
    • Onde é usada: Aceleradores de IA de nível empresarial em Data Centers (NVIDIA H100, H200, B200, AMD Instinct MI300X).
    • Versões Atuais: HBM3 e HBM3e.
    • Características: As pilhas de memória são montadas diretamente no mesmo chipset de silicone da GPU (empilhado em 3D). Entrega larguras de banda brutas monstruosas (passando dos 3 TB/s) e densidades de memória de 80 GB a mais de 192 GB por GPU.

O que acontece quando a VRAM acaba?

  • Nas APIs de Treino / GPUs: Ocorre o erro crítico de OOM (Out of Memory) e o processo para imediatamente.
  • Em Softwares de Execução Local (Ollama, LM Studio, llama.cpp): Se o modelo for maior do que a VRAM disponível, o sistema aplica o offloading (descarregamento): carrega o máximo possível de camadas na VRAM da GPU e empurra as camadas restantes para a memória RAM do sistema. O modelo continuará funcionando, mas a velocidade de geração de tokens despencará significativamente.