PyTorch 2.15 macht MoE-Decoding auf Macs bis zu 6,5-mal schneller
PyTorch 2.15 bringt FP8-Tensoren auf Apple-GPUs und neue Metal-Kernels. Das Decoding von Qwen3.6-35B-A3B auf einem M3 Ultra springt von 9,4 auf 61,3 Token pro Sekunde.
3 Min. Lesezeit

- 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 erscheint am 28. Oktober 2026 und macht Macs mit Apple Silicon deutlich schneller beim Ausführen von Mixture-of-Experts-KI-Modellen. Laut dem PyTorch-Team von Hugging Face läuft das Decoding auf einem M3 Ultra etwa 5- bis 6,5-mal schneller als in 2.14. Das Release bringt außerdem FP8-Zahlen auf Apple-GPUs und behebt Speicher- und Genauigkeitsprobleme, die einige Bildmodelle lahmlegten.
Was MPS ist und was sich geändert hat
MPS ist das PyTorch-Backend für Apples GPUs, also der Teil, der Ihr Modell auf dem Grafikchip eines Macs statt auf seiner CPU ausführt. Der Beitrag von Hugging Face, verfasst von Irakli Salia und Khushi Agrawal, listet die Arbeit in 2.15 auf. Das erklärte Ziel ist, „Ihren Mac zu einem erstklassigen Ort zu machen, um PyTorch-Modelle auszuführen und zu trainieren“.
Ein Großteil des Tempos kommt daher, dass Operationen auf handgeschriebene Metal-Kernels verlagert wurden. Metal ist Apples hardwarenahe Schnittstelle für Grafik und Berechnungen. Zuvor liefen viele Operationen über MPSGraph, Apples allgemeineres Framework, was zusätzlichen Overhead verursachte.
Das Release ändert, wie Modelle Text erzeugen. Wenn ein Modell ein Token nach dem anderen schreibt, nutzt F.linear jetzt Kernels, die für eine einzelne Eingabezeile gebaut sind. Ein neues natives F.grouped_mm übernimmt die vielen kleinen Matrixmultiplikationen, die Mixture-of-Experts-Modelle brauchen. Diese Modelle schicken jedes Token an einige spezialisierte Teilnetze, die Experten genannt werden.
Die Zahlen
Alle Zahlen stammen aus dem Beitrag von Hugging Face und wurden auf Apple-Hardware mit torch.compile gemessen.
| Test | PyTorch 2.14 | PyTorch 2.15 |
|---|---|---|
| Decoding von Qwen3.6-35B-A3B, M3 Ultra | 9,4 tokens/s | 61,3 tokens/s |
| Decoding von LFM2.5-8B-A1B, M3 Ultra | 23,6 tokens/s | 123,6 tokens/s |
| Softmax über eine Zeile mit 128.256 Token | 57 Mikrosekunden | 7 Mikrosekunden |
| Video-VAE-Decoding von Wan2.2, maximaler Treiberspeicher | 270,1 GiB | 8,1 GiB |
| Genauigkeit des VAE von Qwen-Image-2.1 gegenüber der CPU | 10,06 dB | 29,95 dB |
Lineare Schichten legten weniger zu: im Schnitt 1,23-mal schneller über 96 BF16-Schichtformen, wobei große Schichten nahe bei 1x blieben. Die Korrektur der Genauigkeit ist wichtig für Bildwerkzeuge. Laut dem Beitrag lieferte der Encoder von Qwen-Image-2.1 unter 2.14 in ComfyUI fehlerhafte Ausgaben.
FP8 und weitere Neuerungen
FP8 ist ein Zahlenformat, das jeden Wert in einem Byte speichert, halb so groß wie die gängigen 16-Bit-Formate. PyTorch 2.15 unterstützt FP8-Tensoren auf MPS, und die skalierte Matrixmultiplikation F.scaled_mm funktioniert mit ihnen.
Weitere Änderungen im Beitrag:
- Eine Streams-API,
torch.mps.Stream, um Arbeit parallel auf der GPU auszuführen. - Schnelleres Softmax, schnellere Faltung, schnelleres Padding und schnelleres Dropout auf eigenen Metal-Kernels.
- Mehr lineare Algebra, darunter komplexe LU-Zerlegung und schnellere Inversion kleiner Matrizen.
- Neue Operationen wie
torch.frexp,torch.takeundtorch.heaviside.
Voraussetzungen und Erscheinungstermin
PyTorch 2.15 benötigt auf einem Mac mit Apple Silicon macOS 15 oder neuer und Python 3.11 oder neuer. Die Unterstützung für Python 3.10 endet mit diesem Release. Die Release-Manager von PyTorch bestätigten, dass 2.14 die letzte Version mit Wheels für 3.10 ist.
Der Release-Branch wurde am 5. Oktober abgezweigt, und der erste Release Candidate erschien am 8. Oktober. Das finale Release ist für den 28. Oktober angesetzt. Sie können den Kandidaten schon jetzt in einer separaten Umgebung testen, mit uv pip install torch==2.15.0 --index-url https://download.pytorch.org/whl/test/cpu.
Der Beitrag gibt außerdem einen Ausblick auf Arbeiten für 2.16, die sich noch ändern können. Die Attention für Grouped-Query-Decoding auf einem M5 Pro sinkt in frühen Tests von 465 auf 65 Mikrosekunden.
Was das für Entwickler bedeutet
Wer offene Modelle lokal auf einem Mac ausführt, bekommt mit 2.15 große Verbesserungen. Mixture-of-Experts-Modelle legen in den Tests von Hugging Face am stärksten zu.
- Testen Sie den Release Candidate mit Ihrem eigenen Modell. Installieren Sie ihn in einer separaten Umgebung und vergleichen Sie vor dem 28. Oktober die Token pro Sekunde mit 2.14.
- Aktualisieren Sie zuerst Python und macOS. Builds unter Python 3.10 oder macOS 14 bekommen 2.15 nicht. Planen Sie diesen Wechsel jetzt.
- Prüfen Sie Bild-Pipelines erneut. Wenn Ausgaben von Qwen-Image-2.1 oder Wan2.2 falsch aussahen oder der Speicher ausging, zielt 2.15 genau auf diese Fehler.
- Probieren Sie FP8, um Speicher zu sparen. Ein Byte pro Wert halbiert den Speicherbedarf gegenüber 16-Bit-Formaten. Prüfen Sie die Ausgabequalität für Ihre Aufgabe, bevor Sie umsteigen.
- Vergleichen Sie Backends über verschiedene Hardware hinweg. Der Vorstoß von PyTorch, jeden Chip zu einem nativen Gerät zu machen, umfasst auch das neue TorchNeuron-Backend für AWS Trainium. Code, der geräteneutral bleibt, kann zwischen ihnen wechseln.
Quellen
- 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
Ähnliche Artikel

RemoveMacAI entfernt die Apple-Intelligence-Modelle aus macOS 27
Ein neues MIT-lizenziertes Kommandozeilen-Werkzeug schaltet Apple Intelligence unter macOS 27 ab, löscht die Modelle auf dem Gerät und verhindert, dass macOS sie erneut herunterlädt.

DuckDB 2.0 LTS bringt Servermodus, Trigger und VARIANT
DuckDB 2.0.0, ein Release mit Langzeit-Support vom 21. Oktober, bringt einen Servermodus, Trigger und VARIANT. Versionen vor 2.0 können seine Dateien nicht lesen.

TorchTPU: Google veröffentlicht natives PyTorch für TPUs als Open Source
TorchTPU führt PyTorch nativ auf Google-TPUs aus und bestand bei 98 % von 4.917 getesteten Hugging-Face-Modellen. PyTorch/XLA ist veraltet und wird am 15. November archiviert.