Atualização de Desempenho de Inferência MLX: Benchmarks e Recursos de Abril de 2026

✍️ OpenClawRadar📅 Publicado: April 14, 2026🔗 Source
Atualização de Desempenho de Inferência MLX: Benchmarks e Recursos de Abril de 2026
Ad

Benchmarks de Desempenho no M2 Ultra

Os benchmarks de origem avaliam a inferência do MLX em um Mac Studio M2 Ultra com 128GB de memória unificada, executando modelos grandes localmente para cargas de trabalho de agentes de codificação. A velocidade de geração foi medida em quatro modelos com taxa de transferência de decodificação em tokens/segundo em várias profundidades de cache KV (256 tokens de saída por execução).

Dados de Desempenho dos Modelos

  • Qwen3.5-27B (denso, 8 bits): 20,2 tok/s em 4K, 16,4 tok/s em 64K, 13,1 tok/s em 128K
  • Qwen3.5-35B-A3B (MoE, 8 bits): 71,8 tok/s em 4K, 53,5 tok/s em 64K, 41,9 tok/s em 128K
  • Nemotron Super 120B (5 bits): 36,4 tok/s em 4K, 31,2 tok/s em 64K, 28,4 tok/s em 128K
  • Qwen3.5-122B-A10B (MoE, 5 bits): 40,6 tok/s em 4K, 29,4 tok/s em 64K, 23,1 tok/s em 128K

O MoE de 35B atinge alta taxa de transferência porque apenas 3B de seus 35B parâmetros estão ativos por token. O Nemotron Super 120B mostra degradação mínima com o contexto (queda de 14% de 4K para 64K) porque 80 de suas 88 camadas usam Mamba-2, que tem custo constante por token.

Acelerações de Recursos

Multi-Token Prediction (MTP): Os modelos Qwen 3.5 têm um cabeçalho de rascunho integrado que prevê o próximo token em paralelo. Com aceitação probabilística a 90%, o 122B vai de ~17 tok/s para 38,8 tok/s (aceleração de 2,3x). A sobrecarga do servidor é mínima: uma solicitação de prompt curto através do vllm-mlx gera a 39 tok/s, correspondendo à linha de base.

SpecPrefill: Para prompts longos, um modelo de rascunho de 2B pontua a importância do token via atenção, então o alvo apenas pré-preenche os 20% principais. No 122B em contexto de 128K, o Time To First Token (TTFT) cai de 19,3 minutos para 3,5 minutos (aceleração de 5,5x). Este recurso só é ativado para prompts acima de 8K tokens.

Ad

Comparação MLX vs. llama.cpp

Benchmarking do Qwen3.5-35B-A3B em ambas as pilhas (512 tokens gerados após preencher o cache KV):

  • Contexto de 32K: MLX 8 bits: 60,8 tok/s, llama.cpp FA ON (5 bits): 54,85 tok/s, llama.cpp FA OFF: 36,45 tok/s
  • Contexto de 64K: MLX 8 bits: 53,2 tok/s, llama.cpp FA ON (5 bits): 45,84 tok/s, llama.cpp FA OFF: 24,47 tok/s
  • Contexto de 128K: MLX 8 bits: 42,7 tok/s, llama.cpp FA ON (5 bits): 34,48 tok/s, llama.cpp FA OFF: 13,73 tok/s

O MLX usa um kernel de decodificação split-K de 2 passos (sdpa_vector_2pass) que despacha até 1024 grupos de threads em contexto de 128K. A comparação mostra que o MLX é competitivo com o llama.cpp em comprimentos de contexto longos.

Impacto da Arquitetura Híbrida

Os modelos testados usam arquiteturas híbridas com menos camadas de atenção:

  • Qwen3.5-35B-A3B: 25% de camadas de atenção (10 de 40), 71,8 tok/s em 4K, queda de -25% em 64K
  • Nemotron Super 120B: 9% de camadas de atenção (8 de 88), 36,4 tok/s em 4K, queda de -14% em 64K

O Qwen 3.5 usa camadas GatedDeltaNet (recorrência linear) para a maior parte da rede com atenção padrão para apenas 25% das camadas. Menos camadas de atenção significa menos cache KV para escanear por token e menos degradação em contexto longo.

Melhorias Recentes

O ecossistema MLX tem três camadas que tiveram desenvolvimento rápido. O núcleo do MLX recebeu uma reformulação de segurança de threads (M por thread... [texto de origem truncado]. Combinado com batch contínuo e cache de prefixo, o 122B agora serve agentes de codificação interativamente em comprimentos de contexto que antes eram impraticáveis.

📖 Read the full source: r/LocalLLaMA

Ad

👀 See Also