Benchmark Flash-MOE no M5 Max: 12.99 tok/s com Qwen3.5-397B

Resultados de Desempenho
Um usuário testou a implementação flash-moe em um MacBook Pro M5 Max com 128GB de memória unificada, executando o modelo mlx-community/Qwen3.5-397B-A17B-4bit. O benchmark original de Dan Woods em um M3 Max com 48GB de RAM alcançou 4,36 tokens por segundo. No M5 Max, a configuração padrão com quantização de 4 bits e sem cache-io-split atingiu 12,48 tok/s. Com a configuração ideal --cache-io-split 4, o desempenho aumentou para 12,99 tok/s, tornando-o três vezes mais rápido que o benchmark original.
Análise do Cache-IO-Split
O usuário realizou uma varredura completa dos valores de cache-io-split usando o fork Anemll do flash-moe, que adiciona suporte Metal 4 NAX para chips M5+. Os resultados mostram que as divisões 2 e 3 degradam o desempenho, enquanto a divisão 4 fornece a melhor otimização:
- cache-io-split 1 (nenhum): 12,48 tok/s, 28,4ms de I/O por token
- cache-io-split 2: 9,94 tok/s, 28,2ms de I/O por token
- cache-io-split 3: 9,99 tok/s, 36,1ms de I/O por token
- cache-io-split 4: 12,99 tok/s, 25,9ms de I/O por token
- cache-io-split 5: 12,64 tok/s, 27,5ms de I/O por token
- cache-io-split 8: 12,90 tok/s, 26,4ms de I/O por token
A análise sugere que a divisão 4 se alinha com o paralelismo interno do controlador SSD do M5 Max, enquanto valores mais altos adicionam sobrecarga de agendamento. A recomendação é usar --cache-io-split 4 ou nenhuma divisão, evitando as divisões 2 e 3.
Comparação de Quantização
Testes de quantização de 2 bits versus 4 bits revelaram que 2 bits não oferece vantagem de velocidade no M5 Max, com a velocidade do SSD tornando arquivos menores desnecessários e a sobrecarga de desquantização cancelando quaisquer ganhos. A qualidade sofre significativamente com 2 bits:
- 4 bits: 12,99 tok/s, 3,64 perplexidade no WikiText-2
- 2 bits: ~12,65 tok/s, 5,71 perplexidade no WikiText-2 (57% pior)
A conclusão é usar quantização de 4 bits para melhor qualidade sem sacrificar velocidade.
Detalhes Técnicos
O benchmark usou o fork Anemll disponível em https://github.com/Anemll/flash-moe. O desempenho sustentado permaneceu estável em 11,23 tok/s ao longo de 1000 tokens sem degradação. O usuário observou que processos em segundo plano usando Metal/GPU, como o LM Studio, podem impactar significativamente o desempenho e devem ser fechados durante os testes.
📖 Leia a fonte completa: r/LocalLLaMA
👀 See Also

Mouser: Alternativa de código aberto ao Logitech Options+ para MX Master 3S
Mouser é uma ferramenta leve e de código aberto que remapeia os botões do mouse Logitech MX Master 3S sem exigir o software proprietário da Logitech. Ele é executado totalmente localmente sem telemetria, suporta perfis por aplicativo e inclui controle de DPI e monitoramento de bateria.

Extensão Local AI do VS Code bloqueia geração de código inseguro durante salvamentos
Um desenvolvedor criou uma extensão do VS Code que executa o modelo llama3.1:8b-instruct-q4 localmente para interceptar salvamentos, mapear fluxos de execução de origem para destino e bloquear código inseguro gerado por IA, como vulnerabilidades de injeção de logs CWE-117.

Integração do WordPress.com MCP Adiciona Capacidades de Escrita para Claude
A integração do MCP do WordPress.com agora suporta operações de escrita, permitindo que o Claude crie rascunhos de posts, construa páginas, gerencie comentários, corrija textos alternativos de imagens e reorganize categorias de conteúdo diretamente em sites do WordPress.com. Antes de gerar conteúdo, o Claude lê o tema do site para entender elementos de design como cores, fontes e padrões de blocos.

Rift CLI: Gerencie Git Worktrees para Fluxos de Trabalho Paralelos de Agentes de IA
Rift é uma ferramenta CLI que cria worktrees e branches isolados do Git para executar múltiplos agentes de codificação de IA, como o Claude Code, simultaneamente no mesmo repositório. Inclui ganchos de ciclo de vida, mapeamento de portas determinístico e suporte a workspace multi-editores.