PyTorch 2.15 acelera hasta 6,5 veces la decodificación MoE en Mac
PyTorch 2.15 añade tensores FP8 en las GPU de Apple y nuevos kernels de Metal. La decodificación de Qwen3.6-35B-A3B en un M3 Ultra salta de 9,4 a 61,3 tokens por segundo.
3 min de lectura

- Qwen3.6-35B-A3B, 2.14
- 9.4
- Qwen3.6-35B-A3B, 2.15
- 61.3
- LFM2.5-8B-A1B, 2.14
- 23.6
- LFM2.5-8B-A1B, 2.15
- 123.6
PyTorch 2.15, previsto para el 28 de octubre de 2026, hace que los Mac con Apple Silicon sean mucho más rápidos al ejecutar modelos de IA de mezcla de expertos (mixture-of-experts). El equipo de PyTorch de Hugging Face dice que la decodificación en un M3 Ultra es entre unas 5 y 6,5 veces más rápida que en la 2.14. La versión también añade números FP8 en las GPU de Apple y corrige problemas de memoria y precisión que rompían algunos modelos de imagen.
Qué es MPS y qué ha cambiado
MPS es el backend de PyTorch para las GPU de Apple, la parte que ejecuta tu modelo en el chip gráfico de un Mac en lugar de en su CPU. La publicación de Hugging Face, escrita por Irakli Salia y Khushi Agrawal, enumera el trabajo de la 2.15. Su objetivo declarado es «hacer de tu Mac un lugar de primera clase para ejecutar y entrenar modelos de PyTorch».
Gran parte de la velocidad viene de trasladar operaciones a kernels de Metal escritos a mano. Metal es la interfaz de bajo nivel de Apple para gráficos y cálculo. Antes, muchas operaciones pasaban por MPSGraph, el framework más general de Apple, lo que añadía sobrecarga.
La versión cambia la forma en que los modelos generan texto. Cuando un modelo escribe un token cada vez, F.linear ahora usa kernels creados para una sola fila de entrada. Un nuevo F.grouped_mm nativo se encarga de las muchas multiplicaciones de matrices pequeñas que necesitan los modelos de mezcla de expertos. Esos modelos envían cada token a unas pocas subredes especializadas, llamadas expertos.
Las cifras
Todas las cifras proceden de la publicación de Hugging Face y se midieron en hardware de Apple con torch.compile.
| Prueba | PyTorch 2.14 | PyTorch 2.15 |
|---|---|---|
| Decodificación de Qwen3.6-35B-A3B, M3 Ultra | 9,4 tokens/s | 61,3 tokens/s |
| Decodificación de LFM2.5-8B-A1B, M3 Ultra | 23,6 tokens/s | 123,6 tokens/s |
| Softmax sobre una fila de 128.256 tokens | 57 microsegundos | 7 microsegundos |
| Decodificación VAE de vídeo de Wan2.2, pico de memoria del controlador | 270,1 GiB | 8,1 GiB |
| Precisión del VAE de Qwen-Image-2.1 frente a la CPU | 10,06 dB | 29,95 dB |
Las capas lineales mejoraron menos: 1,23 veces más rápidas de media en 96 formas de capa BF16, con las capas grandes cerca de 1x. La corrección de precisión importa para las herramientas de imagen. La publicación dice que el codificador de Qwen-Image-2.1 producía una salida corrupta en ComfyUI con la 2.14.
FP8 y otras novedades
FP8 es un formato numérico que guarda cada valor en un byte, la mitad que los formatos habituales de 16 bits. PyTorch 2.15 admite tensores FP8 en MPS, y la multiplicación de matrices escalada F.scaled_mm funciona con ellos.
Otros cambios de la publicación:
- Una API de streams,
torch.mps.Stream, para ejecutar trabajo en paralelo en la GPU. - Softmax, convolución, padding y dropout más rápidos en kernels de Metal dedicados.
- Más álgebra lineal, incluida la factorización LU compleja y una inversión más rápida de matrices pequeñas.
- Nuevas operaciones como
torch.frexp,torch.takeytorch.heaviside.
Requisitos y fecha de lanzamiento
PyTorch 2.15 necesita macOS 15 o posterior y Python 3.11 o posterior en un Mac con Apple Silicon. El soporte de Python 3.10 termina con esta versión. Los responsables de versiones de PyTorch confirmaron que la 2.14 es la última versión con wheels para 3.10.
La rama de la versión se creó el 5 de octubre, y la primera versión candidata salió el 8 de octubre. La versión final está prevista para el 28 de octubre. Puedes probar ya la versión candidata en un entorno separado con uv pip install torch==2.15.0 --index-url https://download.pytorch.org/whl/test/cpu.
La publicación también adelanta trabajo previsto para la 2.16, que puede cambiar. La atención para la decodificación con grouped-query en un M5 Pro baja de 465 a 65 microsegundos en las primeras pruebas.
Qué significa esto para los desarrolladores
Para quien ejecute modelos abiertos en local en un Mac, la 2.15 trae grandes mejoras. Los modelos de mezcla de expertos son los que más ganan en las pruebas de Hugging Face.
- Prueba la versión candidata con tu propio modelo. Instálala en un entorno separado y compara los tokens por segundo con la 2.14 antes del 28 de octubre.
- Actualiza primero Python y macOS. Las compilaciones con Python 3.10 o macOS 14 no recibirán la 2.15. Planifica ese cambio ya.
- Vuelve a revisar los pipelines de imagen. Si las salidas de Qwen-Image-2.1 o Wan2.2 parecían incorrectas o se quedaban sin memoria, la 2.15 apunta justo a esos errores.
- Prueba FP8 para ahorrar memoria. Un byte por valor reduce a la mitad la memoria frente a los formatos de 16 bits. Comprueba la calidad de la salida en tu tarea antes de cambiar.
- Compara backends en distinto hardware. El impulso de PyTorch para convertir cada chip en un dispositivo nativo también abarca el nuevo backend TorchNeuron de AWS Trainium. El código que se mantiene independiente del dispositivo puede moverse entre ellos.
Fuentes
- MPS in PyTorch 2.15 - Hugging Face
- PyTorch Release 2.15 Key Dates - PyTorch Developer Mailing List
- PyTorch 2.15 RC1 produced for pytorch, torchvision & torchaudio - PyTorch Developer Mailing List
Artículos relacionados

RemoveMacAI elimina los modelos de Apple Intelligence de macOS 27
Una nueva herramienta de línea de comandos con licencia MIT desactiva Apple Intelligence en macOS 27, borra sus modelos locales y evita que macOS vuelva a descargarlos.

DuckDB 2.0 LTS añade modo servidor, disparadores y VARIANT
DuckDB 2.0.0, una versión de soporte a largo plazo publicada el 21 de octubre, añade un modo servidor, disparadores y VARIANT. Las versiones anteriores a la 2.0 no pueden leer sus archivos.

TorchTPU: Google libera como código abierto un PyTorch nativo para TPU
TorchTPU ejecuta PyTorch de forma nativa en las TPU de Google y superó la prueba con el 98 % de los 4.917 modelos de Hugging Face probados. PyTorch/XLA queda obsoleto y se archivará el 15 de noviembre.