Melhores LLMs para Ollama em GPU com 16GB de VRAM

Teste de velocidade de LLM na RTX 4080 com 16 GB de VRAM

Conteúdo da página

Executar modelos de linguagem grandes localmente oferece privacidade, capacidade offline e zero custos de API. Este benchmark revela exatamente o que se pode esperar de 9 populares LLMs no Ollama no RTX 4080.

Com um GPU de 16 GB de VRAM, enfrentei constantemente um trade-off: modelos maiores com potencialmente melhor qualidade, ou modelos menores com inferência mais rápida.

7 llamas - Comparando LLMs no Ollama

TL;DR

Aqui está a tabela de comparação do desempenho dos LLMs no RTX 4080 16 GB com Ollama 0.15.2:

Modelo RAM+VRAM Usado CPU/GPU Split Tokens/segundo
gpt-oss:20b 14 GB 100% GPU 139.93
ministral-3:14b 13 GB 100% GPU 70.13
qwen3:14b 12 GB 100% GPU 61.85
qwen3-vl:30b-a3b 22 GB 30%/70% 50.99
glm-4.7-flash 21 GB 27%/73% 33.86
nemotron-3-nano:30b 25 GB 38%/62% 32.77
devstral-small-2:24b 19 GB 18%/82% 18.67
mistral-small3.2:24b 19 GB 18%/82% 18.51
gpt-oss:120b 66 GB 78%/22% 12.64

Insight principal: Modelos que cabem totalmente na VRAM são drasticamente mais rápidos. O GPT-OSS 20B atinge 139.93 tokens/segundo, enquanto o GPT-OSS 120B com desempenho pesado na CPU arrasta-se a 12.64 tokens/segundo — uma diferença de velocidade de 11 vezes.

Configuração de Hardware de Teste

O benchmark foi conduzido no seguinte sistema:

  • GPU: NVIDIA RTX 4080 com 16 GB de VRAM
  • CPU: Intel Core i7-14700 (8 P-cores + 12 E-cores)
  • RAM: 64 GB DDR5-6000

Isso representa uma configuração comum de alto desempenho para inferência local de LLM. A VRAM de 16 GB é a restrição crítica — determina quais modelos executam totalmente na GPU versus aqueles que exigem desempenho na CPU.

Entender como o Ollama usa os núcleos da CPU Intel se torna importante quando os modelos excedem os limites de VRAM, pois o desempenho da CPU impacta diretamente a velocidade da inferência das camadas desempenhadas.

Propósito deste Benchmark

O objetivo principal foi medir a velocidade de inferência sob condições realistas. Já sabia por experiência que o Mistral Small 3.2 24B se destaca na qualidade da linguagem, enquanto o Qwen3 14B oferece superioridade no seguimento de instruções para meus casos específicos de uso.

Este benchmark responde à pergunta prática: Quão rápido cada modelo pode gerar texto e qual é a penalidade de velocidade por exceder os limites de VRAM?

Os parâmetros do teste foram:

  • Tamanho do contexto: 19.000 tokens
  • Prompt: “compare weather and climate between capital cities of australia”
  • Métrica: taxa de avaliação (tokens por segundo durante a geração)

Instalação e Versão do Ollama

Todos os testes usaram a versão 0.15.2 do Ollama, a mais recente no momento do teste. Para uma referência completa dos comandos do Ollama usados neste benchmark, veja a folha de dicas do Ollama.

Para instalar o Ollama no Linux:

curl -fsSL https://ollama.com/install.sh | sh

Verificar a instalação:

ollama --version

Se você precisar armazenar modelos em um disco diferente devido a restrições de espaço, veja como mover modelos do Ollama para um disco diferente.

Modelos Testados

Os seguintes modelos foram benchmarkados:

Modelo Parâmetros Quantização Notas
gpt-oss:20b 20B Q4_K_M Mais rápido geral
gpt-oss:120b 120B Q4_K_M Maior testado
qwen3:14b 14B Q4_K_M Melhor seguimento de instruções
qwen3-vl:30b-a3b 30B Q4_K_M Capaz de visão
ministral-3:14b 14B Q4_K_M Modelo eficiente da Mistral
mistral-small3.2:24b 24B Q4_K_M Qualidade de linguagem forte
devstral-small-2:24b 24B Q4_K_M Foco em código
glm-4.7-flash 30B Q4_K_M Modelo de pensamento
nemotron-3-nano:30b 30B Q4_K_M Oferta da NVIDIA

Para baixar qualquer modelo:

ollama pull gpt-oss:20b
ollama pull qwen3:14b

Entendendo o Desempenho da CPU

Quando as exigências de memória de um modelo excedem a VRAM disponível, o Ollama distribui automaticamente as camadas do modelo entre a GPU e a memória do sistema. O resultado mostra isso como uma divisão percentual como “18%/82% CPU/GPU”.

Isso tem implicações de desempenho massivas. Cada geração de token requer transferência de dados entre a memória da CPU e da GPU — um gargalo que se compõe com cada camada desempenhada na CPU.

O padrão é claro a partir dos nossos resultados:

  • Modelos 100% na GPU: 61-140 tokens/segundo
  • Modelos 70-82% na GPU: 19-51 tokens/segundo
  • 22% na GPU (quase totalmente na CPU): 12,6 tokens/segundo

Isso explica por que um modelo de 20B de parâmetros pode superar um modelo de 120B em 11 vezes na prática. Se você planeja servir múltiplas solicitações simultâneas, entender como o Ollama lida com solicitações paralelas se torna essencial para a planejamento de capacidade.

Resultados Detalhados do Benchmark

Modelos Executando 100% na GPU

GPT-OSS 20B — O Campeão de Velocidade

ollama run gpt-oss:20b --verbose
/set parameter num_ctx 19000

NAME           SIZE     PROCESSOR    CONTEXT
gpt-oss:20b    14 GB    100% GPU     19000

eval count:           2856 token(s)
eval duration:        20.410517947s
eval rate:            139.93 tokens/s

A 139.93 tokens/segundo, o GPT-OSS 20B é claramente o vencedor para aplicações críticas de velocidade. Ele usa apenas 14 GB de VRAM, deixando espaço para janelas de contexto maiores ou outros trabalhos na GPU.

Qwen3 14B — Excelente Equilíbrio

ollama run qwen3:14b --verbose
/set parameter num_ctx 19000

NAME         SIZE     PROCESSOR    CONTEXT
qwen3:14b    12 GB    100% GPU     19000

eval count:           3094 token(s)
eval duration:        50.020594575s
eval rate:            61.85 tokens/s

O Qwen3 14B oferece o melhor seguimento de instruções em minha experiência, com uma pegada de memória confortável de 12 GB. A 61.85 tokens/segundo, é suficientemente responsivo para uso interativo.

Para desenvolvedores integrando o Qwen3 em aplicações, veja Saída Estruturada de LLM com Ollama e Qwen3 para extrair respostas estruturadas em JSON.

Ministral 3 14B — Rápido e Compacto

ollama run ministral-3:14b --verbose
/set parameter num_ctx 19000

NAME               SIZE     PROCESSOR    CONTEXT
ministral-3:14b    13 GB    100% GPU     19000

eval count:           1481 token(s)
eval duration:        21.11734277s
eval rate:            70.13 tokens/s

O modelo menor da Mistral entrega 70.13 tokens/segundo enquanto cabe totalmente na VRAM. Uma escolha sólida quando você precisa da qualidade da família Mistral no máximo desempenho.

Modelos Requerendo Desempenho na CPU

Qwen3-VL 30B — Melhor Desempenho Parcialmente Desempenhado

ollama run qwen3-vl:30b-a3b-instruct --verbose
/set parameter num_ctx 19000

NAME                         SIZE     PROCESSOR          CONTEXT
qwen3-vl:30b-a3b-instruct    22 GB    30%/70% CPU/GPU    19000

eval count:           1450 token(s)
eval duration:        28.439319709s
eval rate:            50.99 tokens/s

Apesar de 30% das camadas na CPU, o Qwen3-VL mantém 50.99 tokens/segundo — mais rápido do que alguns modelos 100% na GPU. A capacidade de visão adiciona versatilidade para tarefas multimodais.

Mistral Small 3.2 24B — Troca entre Qualidade e Velocidade

ollama run mistral-small3.2:24b --verbose
/set parameter num_ctx 19000

NAME                    SIZE     PROCESSOR          CONTEXT
mistral-small3.2:24b    19 GB    18%/82% CPU/GPU    19000

eval count:           831 token(s)
eval duration:        44.899859038s
eval rate:            18.51 tokens/s

O Mistral Small 3.2 oferece superioridade na qualidade da linguagem, mas paga um preço alto em velocidade. A 18.51 tokens/segundo, parece notavelmente mais lento para chats interativos. Vale a pena para tarefas onde a qualidade importa mais do que a latência.

GLM 4.7 Flash — Modelo de Pensamento MoE

ollama run glm-4.7-flash --verbose
/set parameter num_ctx 19000

NAME                 SIZE     PROCESSOR          CONTEXT
glm-4.7-flash        21 GB    27%/73% CPU/GPU    19000

eval count:           2446 token(s)
eval duration:        1m12.239164004s
eval rate:            33.86 tokens/s

O GLM 4.7 Flash é um modelo Mixture of Experts de 30B-A3B — 30B de parâmetros totais com apenas 3B ativos por token. Como um modelo de “pensamento”, ele gera raciocínio interno antes das respostas. Os 33.86 tokens/segundo incluem tanto tokens de pensamento quanto de saída. Apesar do desempenho na CPU, a arquitetura MoE mantém a velocidade razoavelmente boa.

GPT-OSS 120B — O Pesado

ollama run gpt-oss:120b --verbose
/set parameter num_ctx 19000

NAME            SIZE     PROCESSOR          CONTEXT
gpt-oss:120b    66 GB    78%/22% CPU/GPU    19000

eval count:           5008 token(s)
eval duration:        6m36.168233066s
eval rate:            12.64 tokens/s

Rodar um modelo de 120B em 16 GB de VRAM é tecnicamente possível, mas doloroso. Com 78% na CPU, os 12.64 tokens/segundo tornam o uso interativo frustrante. Mais adequado para processamento em lote onde a latência não importa.

Recomendações Práticas

Para Chat Interativo

Use modelos que cabem 100% na VRAM:

  1. GPT-OSS 20B — Velocidade máxima (139.93 t/s)
  2. Ministral 3 14B — Boa velocidade com qualidade Mistral (70.13 t/s)
  3. Qwen3 14B — Melhor seguimento de instruções (61.85 t/s)

Para uma experiência de chat melhor, considere UIs de Chat de Código Aberto para Ollama Local.

Para Processamento em Lote

Quando a velocidade é menos crítica:

  • Mistral Small 3.2 24B — Qualidade superior da linguagem
  • Qwen3-VL 30B — Capacidade de visão + texto

Para Desenvolvimento e Códigos

Se você está construindo aplicações com o Ollama:

Opções Alternativas de Hospedagem

Se as limitações do Ollama preocupam você (veja Preocupações com Enshittification do Ollama), explore outras opções no Guia de Hospedagem de LLMs Locais ou compare Docker Model Runner vs Ollama.

Conclusão

Com 16 GB de VRAM, você pode executar LLMs capazes a velocidades impressionantes — se escolher com sabedoria. As descobertas principais:

  1. Mantenha-se dentro dos limites de VRAM para uso interativo. Um modelo de 20B a 140 tokens/segundo supera um modelo de 120B a 12 tokens/segundo para a maioria dos propósitos práticos.

  2. O GPT-OSS 20B vence em velocidade pura, mas o Qwen3 14B oferece o melhor equilíbrio de velocidade e capacidade para tarefas de seguimento de instruções.

  3. O desempenho na CPU funciona, mas espere reduções de 3 a 10 vezes. Aceitável para processamento em lote, frustrante para chat.

  4. O tamanho do contexto importa. O contexto de 19K usado aqui aumenta significativamente o uso de VRAM. Reduza o contexto para uma melhor utilização da GPU.

Para busca com IA combinando LLMs locais com resultados da web, veja auto-hospedagem do Perplexica com Ollama.

Recursos Internos

Referências Externas