Blank white background with no objects or features visible.

Estamos disponibilizando acesso gratuito ao Gartner Hype Cycle for AI Governance 2026 completo. Obtenha sua cópia →

Benchmark de vLLM: Qwen3-8B vs Llama 3.1 8B vs Ministral 8B em uma única A10

By Nithin Philips

Published: October 12, 2026

⚡ TL;DR

We ran a concurrent-sweep vLLM benchmark against three 8B models on one NVIDIA A10 (24 GB). Qwen3-8B completed every request at every concurrency level through 256 with zero errors. Llama 3.1 8B posted the highest raw throughput but shed 87% of requests at 128 concurrent. Ministral 8B had persistent errors from concurrency 4. For interactive chat and copilot workloads, deploy Qwen3. For batch inference capped at 64 concurrent, Llama is the better choice.

Executamos testes de concorrência com o GuideLLM em três modelos de 8 bilhões de parâmetros em uma única GPU NVIDIA A10 (24 GB): Qwen3-8B, Llama 3.1 8B Instruct e Ministral 8B. Este benchmark do vLLM variou a concorrência de 4 a 256 usuários simultâneos em duas cargas de trabalho: chat conversacional curto e classificação de intenção. Um modelo se manteve estável em toda a faixa. Os outros dois, não.

A configuração

Todos os três modelos rodaram em FP16 no vLLM, servidos pelo endpoint de streaming padrão /v1/chat/completions. O GuideLLM manteve exatamente N requisições em processamento por 90 segundos em cada nível de concorrência (4, 8, 16, 32, 64, 128, 256), com 30 segundos de intervalo entre os níveis.

Duas cargas de trabalho:

  • Chat curto: aproximadamente 180 tokens de entrada, 130-150 tokens de saída. Reflete um caso de uso de copiloto ou assistente conversacional.
  • Classificador: aproximadamente 60 tokens de entrada, 4 tokens de saída. Reflete um roteador de intenção ou classificador de tickets.

Mesma versão do vLLM, mesma configuração de gateway, mesma GPU para todos os três. Os resultados abaixo refletem essas condições.

Resumo dos resultados

A tabela de resumo utiliza 64 usuários simultâneos para a comparação de chat curto. Esse é o último nível de concorrência em que o Llama rodou sem falhas (0% de erros), sendo, portanto, a base de comparação mais justa entre os três modelos.

Model TTFT p50 TTFT p95 E2E p95 Throughput Error rate
Qwen3-8B 524 ms 2,840 ms 11.4 s 851 tok/s 0.0%
Llama 3.1 8B 2,569 ms 4,062 ms 10.4 s 947 tok/s 0.0%
Ministral 8B 512 ms 3,712 ms 13.1 s 729 tok/s 5.3%

O Qwen3 apresenta o menor tempo de espera típico (p50 de 524 ms) e a cauda mais estável (p95 de 2.840 ms). O Llama processa 11% mais tokens por segundo, mas o usuário mediano espera 2.569 ms pelo primeiro token, em comparação aos 524 ms do Qwen3. Um ponto chamou a atenção nos dados: o p95 de ponta a ponta do Llama (10,4 s) é menor que o do Qwen3 (11,4 s), mesmo com um TTFT muito pior. O Llama começa devagar, mas decodifica rápido. Uma vez que os tokens começam a fluir, eles fluem mais rápido do que no Qwen3. Para interfaces de streaming, no entanto, é esse atraso do primeiro token que os usuários realmente sentem.

As análises completas de percentis em cada nível de concorrência, resultados de tráfego de rajada Poisson e arquivos CSV para download estão no benchmark interativo relatório.

Chat curto: quem falha primeiro sob concorrência

Com baixa concorrência, todos os três modelos começaram com um p50 de TTFT aproximadamente igual, em torno de 350 ms. O Qwen3 manteve esse desempenho. Com 16 usuários simultâneos, o p50 do Qwen3 foi de 388 ms. O do Llama já havia subido para 794 ms.

Qwen3-8B: zero erros em todos os níveis

O Qwen3 completou todas as requisições em todos os níveis de concorrência até 256. Nenhuma requisição foi descartada. O p50 do TTFT com 64 usuários simultâneos foi de 524 ms, com um throughput de 851 tok/s.

Nossa hipótese de trabalho para explicar por que ele se mantém sob carga: o Qwen3 utiliza QK-LayerNorm, que estabiliza as pontuações de atenção sob caches KV longos, e sua pegada de KV ligeiramente menor por camada dá ao vLLM mais margem de agendamento antes que as requisições comecem a formar fila no gateway. O FFN maior do Llama (14.336 contra 12.288 do Qwen3) impulsiona um throughput maior por token, mas preenche o pipeline de decodificação mais rapidamente, deixando menos espaço para novos pré-preenchimentos à medida que a concorrência aumenta. Ainda estamos investigando, mas a diferença de arquitetura parece ser relevante aqui.

O Qwen3 (verde) permanece abaixo do Llama (azul) em toda a faixa. A linha do Llama torna-se tracejada em 128, onde 87% das solicitações falharam. A linha pontilhada marca o teto de conforto interativo de ≈3s.

Llama 3.1 8B: maior throughput, colapsa em 128

O Llama registrou o maior throughput bruto no pico: 1.181 tok/s com concorrência de 256. Com concorrência de 128, no entanto, 86,9% das solicitações receberam erros 408 (timeout). O valor de 1.181 tok/s vem das poucas solicitações que conseguiram passar depois que o servidor já havia descartado a maior parte de sua fila.

Com 64 de concorrência (o último ponto estável), o Llama entregou 947 tok/s com TTFT p95 de 4.062 ms e 0% de erros. Isso é 11% mais throughput que o Qwen3 sob a mesma carga. Para inferência em lote ou pipelines assíncronos onde novas tentativas são aceitáveis, essa vantagem de throughput é real. Para uso interativo, limite-o entre 32 e 64 de concorrência.

O Llama (azul) permanece estável até 64 de concorrência, depois salta para 87% em 128. O Ministral (laranja) apresenta erros desde o início. O Qwen3 (verde) mantém-se em zero durante todo o processo.

Ministral 8B: erros persistentes em toda a faixa

Precisamos ser honestos sobre isso. O Ministral apresentou 3,8% de erros HTTP reais com concorrência de 4, a carga mais leve que testamos. Com 64 de concorrência, foi de 5,3%. Em 128, atingiu 8,9%. Essas foram falhas genuínas 408/503, não artefatos de benchmark. Isso provavelmente reflete a instabilidade da implantação durante nossa janela de teste, em vez de uma limitação fundamental do modelo, mas os dados são os dados.

Onde as solicitações tiveram sucesso, a latência do Ministral foi competitiva: TTFT p50 de 350 ms na linha de base e 512 ms com concorrência de 64, próximo aos 524 ms do Qwen3. No entanto, os números de latência não significam muito se aproximadamente 1 em cada 20 solicitações nunca recebe uma resposta.

Classificação: todos os três atingiram 256 de concorrência, mas as curvas de latência se dividiram

Para a carga de trabalho de classificação, todos os três modelos rodaram de forma estável até 256 usuários simultâneos com zero erros. O Llama liderou em solicitações brutas por segundo (173 RPS), seguido pelo Qwen3 (157 RPS) e pelo Ministral (143 RPS).

O número mais revelador é o quanto a latência variou sob carga. O TTFT p95 do Qwen3 com 128 de concorrência foi de 541 ms, apenas 32% acima de sua linha de base de 409 ms. O p50 mudou de 358 ms para 467 ms. O p95 do Llama quase dobrou (de 351 ms para 689 ms). O do Ministral mais que dobrou (de 390 ms para 823 ms).

Se você precisa de um roteador de intenção ou classificador com latência previsível sob tráfego intenso, a curva plana do Qwen3 merece atenção. A GPU absorve solicitações curtas de classificação em um único lote sem enfileiramento, e isso fica evidente nos números.

O Qwen3 (verde) permanece quase plano até 128 de concorrência. A GPU absorve as solicitações de classificação em um único lote sem enfileiramento. Llama e Ministral mostram o padrão de escada esperado.

Escalonamento de throughput durante o teste

Todos os três começam no mesmo ponto e escalam linearmente até 16 usuários simultâneos. A diferença aumenta a partir daí.

Concurrent users Qwen3-8B Llama 3.1 8B Ministral 8B
4 100 tok/s 102 tok/s 100 tok/s
16 348 tok/s 349 tok/s 319 tok/s
64 851 tok/s 947 tok/s 729 tok/s

Após 64, o throughput do Llama continua subindo no papel (1.181 tok/s em 256), mas a maioria das solicitações está sendo rejeitada. O Qwen3 estabiliza em torno de 830-850 tok/s e atende a todas as solicitações. O Ministral fica cerca de 15% abaixo do Qwen3 com 64 de concorrência, mesmo entre as solicitações que tiveram sucesso.

O número de pico bruto sem uma taxa de erro ao lado é praticamente inútil para o planejamento de capacidade. Todos esses três benchmarks de vLLM ilustram isso.

Todos os três acompanham um ao outro até 32 de concorrência. O Llama (azul) assume a liderança em 64, mas a vantagem é vazia após 128: o throughput aumenta enquanto 87% das solicitações são descartadas (zona sombreada).

Qual modelo implantar

  • Chat e copilotos: Implante o Qwen3-8B. Ele não descarta requisições, escala de forma eficiente e o TTFT é competitivo. Limite a concorrência a 64 para uso interativo (o p95 do TTFT permanece abaixo de 3 segundos) ou aumente para cargas de trabalho assíncronas.
  • Inferência em lote: Llama 3.1 8B, limitado a 64 conexões simultâneas. Acima disso, o gateway descarta requisições agressivamente. É a melhor escolha quando você pode realizar novas tentativas e deseja o máximo de tokens por GPU-segundo.
  • Classificação: Qualquer um dos três funciona bem em escala. Todos rodaram sem problemas com 256 conexões simultâneas. O Llama é cerca de 10% mais rápido em RPS bruto. O Qwen3 apresenta a latência mais estável sob carga.
  • Ministral 8B: Refaça o teste em uma implantação limpa antes de tirar conclusões. Os erros persistentes de baixa concorrência no chat tornam os dados desta execução pouco confiáveis para cargas de trabalho de streaming.

Como servir esses modelos com o TrueFoundry

Executamos este benchmark de vLLM em uma única instância spot A10 implantada via TrueFoundry. A configuração completa do vLLM e os comandos do GuideLLM serão publicados no artigo detalhado.

A camada de serviço de modelos do TrueFoundry implanta backends vLLM em qualquer nível de GPU (A10, A100, H100) diretamente a partir do painel de controle. Você escolhe o modelo, define o max_model_len e o tensor_parallel_size, e o TrueFoundry cuida do container, da alocação da GPU e das verificações de integridade. O modelo é disponibilizado em um endpoint padrão compatível com OpenAI.

À frente do vLLM, o Gateway de IA adiciona cerca de 3-4 ms de sobrecarga enquanto processa mais de 350 RPS em uma única vCPU. Ele oferece limites de taxa por modelo, atribuição de custos, roteamento de fallback entre provedores e um rastreamento completo de requisições. Se você estiver comparando vários modelos (como neste benchmark), pode rotear todos os três pelo mesmo endpoint de gateway e alternar entre eles alterando o campo do modelo na requisição. A URL e as credenciais permanecem as mesmas.

O TrueFoundry suporta mais de 1.000 LLMs por meio de uma única API compatível com OpenAI, portanto, migrar de um modelo de pesos abertos testado para um provedor comercial não exige nenhuma alteração no lado do cliente.

Para equipes que hospedam seus próprios modelos de pesos abertos atrás de um gateway, essa arquitetura mantém a camada de serviço separada do roteamento e da governança. Veja As 10 melhores ferramentas de observabilidade de LLM em 2026 para monitorar sua implantação vLLM assim que ela estiver em execução.

‍

Try now.

One gateway for all your models, MCP servers, and agents.
No credit card needed.

Start free
Table of Contents

One Gateway for Every LLM, Agent and MCP Server

Book a 30-min with our AI expert

Book a Demo

The fastest way to build, govern and scale your AI

Book Demo
Summarize with
ChatGPT logo by OpenAI
Perplexity AI logo
Blurry red snowflake on white background, symmetrical frosty design with soft edges and abstract shape.

Discover More

No items found.
OpenRouter pricing compared with TrueFoundry AI Gateway governance
October 14, 2026
|
5 min read

OpenRouter Pricing in 2026: Full Breakdown of Plans, Costs, and Hidden Fees

No items found.
October 10, 2026
|
5 min read

Claude Code --dangerously-skip-permissions Explicado: Riscos, Casos de Uso e Alternativas Mais Seguras

No items found.
October 7, 2026
|
5 min read

Melhor "Agent Harness" de Código Aberto: Comparativo dos 5 Principais Projetos para 2026

No items found.
July 21, 2026
|
5 min read

Limites do Claude Code Explicados (Edição 2026)

No items found.
No items found.

Recent Blogs

Black left pointing arrow symbol on white background, directional indicator.
Black left pointing arrow symbol on white background, directional indicator.

Frequently asked questions

What does a vLLM benchmark measure?

A vLLM benchmark measures how a model served via vLLM performs under concurrent load. The key metrics are time to first token (TTFT), end-to-end latency, token throughput, and error rates at different concurrency levels. The most useful vLLM benchmarks sweep from low to high concurrency to find the point where performance degrades or requests start failing, since peak throughput numbers without error rates are misleading.

Which 8B model handles the most concurrent users on a single A10?

In this benchmark, Qwen3-8B was the only model to complete every request at every concurrency level through 256 concurrent users with zero errors. Llama 3.1 8B was clean through 64 concurrent but hit 87% error rates at 128. Ministral 8B had persistent errors starting at concurrency 4.

What is a safe concurrency limit for Llama 3.1 8B on an A10?

Based on this vLLM performance benchmark, 64 concurrent users is the last clean operating point for Llama 3.1 8B on a 24 GB A10. At 128 concurrent, 87% of requests fail with gateway timeouts. For interactive workloads, stay at or below 64. For batch jobs with retry logic, you can push higher.

What model-serving backends does TrueFoundry support?

Any LLM, embedding, or custom model via high-performance backends like vLLM, TGI, and Triton, all deployable in the same control plane as the gateway.

Take a quick product tour
Start Product Tour
Product Tour