Autoresearch impulsa a Qwen3.5-397B a 20.34 tok/s en M5 Max mediante transmisión SSD

Configuración de Hardware y Modelo
El experimento se realizó en un MacBook Pro M5 Max con 128GB de memoria unificada y una GPU de 40 núcleos. El modelo utilizado fue Qwen3.5-397B-A17B con expertos Q3-GGUF (precisión mixta Unsloth IQ3_XXS/IQ4_XS), incrustación Q8_0 y cabeza LM Q6_K. El modelo ocupa 209GB en disco—4 veces más grande que la RAM disponible—requiriendo que todo se transmita desde el SSD.
Resultados de Rendimiento
La velocidad de decodificación alcanzó 20.34 tok/s con prefijo a 5.52 tok/s. Esto representa una mejora 2x sobre el punto de partida del M5 Max de 10.61 tok/s y una mejora 4.67x sobre la línea base original de Dan Woods de 4.36 tok/s en hardware M3 Max.
Metodología
El investigador utilizó la metodología de bucle de investigación automática del proyecto flash-moe de Dan Woods, ejecutándola con Claude Code (Anthropic) para realizar y evaluar sistemáticamente 36 experimentos. Cada experimento se registró con resultados antes de proceder, con control de calidad automático mediante umbrales de perplejidad para detectar regresiones. La colaboración humano-IA involucró al investigador dirigiendo la investigación y tomando decisiones científicas mientras Claude Code implementaba y evaluaba bajo dirección.
Fundamento Técnico
El trabajo se basa en el artículo original flash-moe de Dan Woods y el fork de Anemll, que es un motor de inferencia puro en C/Metal para ejecutar Qwen3.5-397B mediante streaming SSD en Apple Silicon. El fork de Anemll agregó soporte para expertos Q3-GGUF esencial para estos resultados, con el investigador añadiendo optimizaciones adicionales a nivel Metal.
Optimizaciones Efectivas
- 16 hilos de E/S + cache-io-split=4: En lugar de leer cada archivo de pesos de expertos como un fragmento secuencial, dividir en 4 lecturas paralelas alineadas por página que acceden a diferentes canales SSD simultáneamente. +1.5 tok/s
- Predicción temporal de expertos: Descubrió 27% de correlación de enrutamiento entre tokens, superponiendo lecturas SSD con cómputo GPU. +4.3 tok/s
- Expertos Q3-GGUF (Unsloth IQ3_XXS/IQ4_XS): Carga útil más pequeña con Q3 como punto óptimo. Mejor perplejidad que 4 bits (5.58 vs 5.62) siendo 23% más pequeño. +2.3 tok/s
- Precodificación CMD2: Eliminar brecha de 30μs por capa de envío. +0.44 tok/s
- Núcleo de proyección Q/K/V fusionado: Leer vector de entrada una vez en lugar de tres veces (optimización GPU Metal). +0.76 tok/s
- Precodificación CMD2 extendida a todas las capas de atención completa: +0.47 tok/s
Nota: Las ganancias no son perfectamente aditivas ya que algunas optimizaciones interactúan entre sí.
Enfoques Fallidos
La investigación tuvo una tasa de descarte del 78%. Los enfoques fallidos incluyeron: cuantización QJL de 1 bit (perplejidad 5647, catastrófica), ternaria de 2 bits con 84% de dispersión de pesos (modelo colapsado), enrutamiento de expertos K=3 (colapso de calidad), predicción entre capas (0% de tasa de aciertos), descarga NAX (sobrecarga de relleno de mosaico canceló ganancias), y expertos MLX de 2 bits (más rápido en aislamiento pero peor perplejidad y sin ventaja de velocidad una vez aplicada predicción temporal a Q3).
Limitaciones y Trabajo Futuro
La investigación se limita a una única plataforma de hardware, por lo que los resultados pueden no generalizarse. La cuantización Q3 a esta escala se degrada notablemente en generación de formato largo, produciendo artefactos en respuestas más largas a pesar de calidad aceptable para tareas cortas. La calidad se evaluó solo mediante perplejidad, no mediante puntos de referencia estandarizados como MMLU o GPQA. Este es un proyecto de investigación de velocidad, no una afirmación de calidad de producción.
Un hallazgo sorprendente: el Motor Neuronal de Apple (ANE) estuvo completamente inactivo durante la inferencia, consumiendo 0W a pesar de ofrecer 38 TOPS de cómputo. El problema es que la inferencia MoE necesita decidir qué expertos activar dinámicamente, mientras que ANE solo funciona con grafos precompilados estáticos. Puede haber una oportunidad para prefijo por lotes.
📖 Leer la fuente completa: r/LocalLLaMA
👀 Ver también

Claude Code v2.1.128: Aislamiento OTEL, correcciones MCP, soporte para archivos .zip de complementos y más de 20 correcciones de errores
Claude Code v2.1.128 evita que los subprocesos hereden las variables de entorno OTEL_*, agrega compatibilidad con plugins .zip, corrige la inundación de reconexiones de MCP y soluciona la cancelación de herramientas de shell paralelas.

Lanzamiento de Claude-Code v2.1.47: Principales correcciones y mejoras
La versión 2.1.47 de Claude-Code trae correcciones cruciales para la representación del terminal en Windows, el manejo de archivos y la salida de herramientas bash, junto con mejoras en la memoria y el rendimiento.
OpenClaw v2026.9.4: Descubrimiento de plugins, aprendizaje guiado de habilidades, GPT Image 2.5
OpenClaw v2026.9.4 unifica en una sola búsqueda los plugins y las skills instalados y disponibles, añade un Skill Workshop dirigible que convierte conversaciones pasadas en skills reutilizables y suma compatibilidad con GPT Image 2.5 Flare y Sunburst.

Desbloqueando Nuevas Posibilidades: Usando Claude Max con Opus 4.6 como API
Descubre un enfoque creativo para utilizar las suscripciones de Claude Max como una API, compatible con Opus 4.6, tal como lo han explorado los entusiastas tecnológicos de la comunidad.