Zum Inhalt springen
// Modelle & Forschung 9 Min. Lesezeit

PyTorch 2.15 erweitert MPS – Benchmarks und Release-Status bleiben zu prüfen

Mindverse News

KI-gestützt erstellt 3 Quellen Originalmeldung: huggingface.co Arbeitsweise

KI-generierte Illustration: PyTorch 2.15 erweitert MPS – Benchmarks und Release-Status bleiben zu prüfen
KI-generierte Illustration

Das Wichtigste in Kürze

  • PyTorch 2.15 soll das MPS-Backend unter anderem um FP8-Tensoren, spezialisierte Metal-Kernel und öffentliche Stream-Schnittstellen erweitern. [1]
  • Hugging Face berichtet von schnelleren LLM-Decodierungen und deutlich geringerem Treiberspeicher beim Video-Dekodieren; die Messwerte stammen aus dem Anbieterbeitrag und sind nicht unabhängig bestätigt. [1]
  • Die Angaben zum MoE-Tempo unterscheiden sich innerhalb des Beitrags erheblich: Neben etwa 1,3-fachen Gewinnen stehen dort Werte, die eine fünf- bis sechsfache Beschleunigung nahelegen. [1]
  • Als Voraussetzungen nennt der Beitrag Apple Silicon, macOS 15 oder neuer und Python 3.11 oder neuer; zugleich beschreibt er die Installation eines Release-Kandidaten. [1]
  • Die für PyTorch 2.16 genannten Verbesserungen sind Vorschauen und keine bereits allgemein verfügbare Funktionalität. [1]
// Inhalt · 8 Abschnitte
  1. Was PyTorch 2.15 für Macs ändern soll
  2. Kompatibilität: höhere Anforderungen als in älteren Unterlagen
  3. FP8 senkt den Speicherbedarf für Werte
  4. LLM-Decodierung: spezialisierte Pfade, uneinheitliche MoE-Zahlen
  5. Weitere Metal-Kernel für lineare Algebra und Training
  6. Video-Decodierung: weniger Treiberspeicher im konkreten Test
  7. Korrektheit, Softmax und mehr Kontrolle über Streams
  8. Was Unternehmen vor einem Wechsel prüfen sollten
  9. Quellen

Was PyTorch 2.15 für Macs ändern soll

PyTorch 2.15 soll die Nutzung des MPS-Backends auf Macs in mehreren Bereichen ausbauen: angekündigt werden FP8-Unterstützung, schnellere Pfade für die LLM-Decodierung, zusätzliche Metal-Kernel für Bild-, Audio- und Videooperationen sowie mehr Kontrolle über GPU-Streams. Die Angaben stammen aus einem am 20. Oktober 2026 veröffentlichten Beitrag des PyTorch-Teams bei Hugging Face. Die Autorinnen und Autoren schreiben, dass sie selbst am MPS-Backend mitarbeiten. [1]

MPS ist PyTorchs GPU-Backend für macOS. Es ordnet Rechenoperationen Metal und den zugehörigen Apple-Technologien zu; die PyTorch-Dokumentation beschreibt dafür sowohl MPSGraph als auch optimierte Kernel. Die Änderungen in 2.15 setzen laut Beitrag an einzelnen Operationen an, die zuvor über MPSGraph liefen oder zusätzliche Arbeit zwischen CPU und GPU verursachten. [1][2]

Beim Release-Status ist eine Einschränkung wichtig: Der Beitrag stellt die Neuerungen als Eigenschaften von PyTorch 2.15 vor, verweist bei der Installation aber auf einen Release-Kandidaten. Auch die mitgelieferte PyTorch-Dokumentation führt 2.14 als stabile und 2.15 als instabile Version. Auf Grundlage dieser Materialien lässt sich daher nicht pauschal behaupten, dass die stabile 2.15-Version bereits allgemein verfügbar ist. [1][2]

Auch die Leistungszahlen sind zunächst als Angaben des beteiligten Entwicklerteams zu lesen. Der Beitrag veröffentlicht Messwerte und beschreibt teilweise die Testumgebung, doch die vorliegenden Quellen enthalten keine unabhängige Replikation. Zudem weichen einige Zahlen für dieselben Modellnamen voneinander ab. Für Unternehmen sind die Ergebnisse deshalb ein Anlass für eigene Tests, nicht ohne Weiteres eine belastbare Prognose für die eigene Infrastruktur. [1]

Kompatibilität: höhere Anforderungen als in älteren Unterlagen

Für PyTorch 2.15 nennt Hugging Face einen Mac mit Apple Silicon, macOS 15 oder neuer und Python 3.11 oder neuer als Voraussetzungen. Der Beitrag sagt außerdem, dass die MPS-Verfügbarkeitsprüfung künftig anzeigt, warum MPS nicht genutzt werden kann, etwa wenn das Betriebssystem zu alt ist oder keine Metal-GPU verfügbar ist. [1]

Diese Anforderungen unterscheiden sich von den Angaben in älteren Unterlagen: Die PyTorch-Dokumentation für Version 2.14 nennt macOS 14 oder neuer als Bedingung für die Verfügbarkeit; Apples Metal-Seite führt Anforderungen für PyTorch 2.11 auf, darunter macOS 14 und Python 3.10. Diese Angaben beziehen sich auf andere Versionen und sind daher kein unmittelbarer Widerspruch zu den Voraussetzungen für 2.15. Für einen geplanten Umstieg sollten Sie die Anforderungen der konkret eingesetzten PyTorch-Version prüfen. [1][2][3]

Die PyTorch-2.15-Ankündigung zeigt außerdem einen Installationsbefehl für einen Release-Kandidaten. Das spricht dafür, den Wechsel zunächst in einer separaten Umgebung zu testen, statt Produktivsysteme allein auf Grundlage der Funktionsankündigung zu aktualisieren. Das ist besonders relevant, wenn Workflows von bestimmten Operatoren, Modellbibliotheken oder festen Python- und macOS-Versionen abhängen. [1]

FP8 senkt den Speicherbedarf für Werte

Eine zentrale Neuerung ist die Unterstützung von Tensoren im Format `torch.float8_e4m3fn` auf MPS. Ein solcher Wert belegt laut Beitrag ein Byte; FP16 und BF16 benötigen jeweils zwei Byte. Damit lässt sich der reine Speicherbedarf der Werte gegenüber diesen Formaten halbieren. Für Matrixmultiplikationen steht laut Ankündigung `F.scaled_mm` mit tensorweiser und zeilenweiser Skalierung zur Verfügung. [1]

Die Skalierung ist dabei ein wesentlicher Teil des Verfahrens: FP8 stellt weniger Genauigkeit zur Verfügung als die genannten 16-Bit-Formate, und die Skalierungswerte werden genutzt, um Eingaben für die Rechnung passend abzubilden. Der Beitrag zeigt ein Beispiel mit tensorweiser Skalierung und gibt als Ausgabetyp BF16 an. Er behauptet nicht, dass FP8 für jedes Modell ohne Anpassungen einsetzbar ist oder bei jeder Aufgabe dieselbe Ergebnisqualität erreicht. [1]

Für Unternehmen kann FP8 bei speicherbegrenzten lokalen Inferenz- oder Entwicklungsworkloads interessant sein. Aus dem kleineren Speicherbedarf allein folgt jedoch weder eine bestimmte Beschleunigung noch, dass ein größeres Modell in jedem Fall praktikabel wird: Dafür zählen auch Modellarchitektur, Skalierung, Operator-Unterstützung und die Auswirkungen auf die Ergebnisqualität. Das sind Prüfpunkte für einen Vergleich mit den eigenen Modellen, nicht Ergebnisse, die der Beitrag allgemein nachweist. [1]

LLM-Decodierung: spezialisierte Pfade, uneinheitliche MoE-Zahlen

Während des Decodierens verarbeitet ein Sprachmodell neue Tokens typischerweise einzeln. Dadurch entstehen lineare Operationen mit einer einzelnen Eingabezeile, die sich von den großen Matrixmultiplikationen im Prefill unterscheiden. PyTorch 2.15 verbindet laut Beitrag vorhandene MPS-GEMV-Kernel – also Kernel für Matrix-Vektor-Produkte – mit `F.linear`. Für geeignete Formen kann außerdem die Bias-Addition in den Kernel integriert werden. In einem Test mit 96 BF16-Layerformen aus realen Modellen meldet das Team ein geometrisches Mittel von 1,23-facher Beschleunigung; bei großen Projektionen seien die Gewinne geringer. [1]

Für Mixture-of-Experts-Modelle führt der Beitrag eine native Implementierung von `grouped_mm` an. MoE-Layer verteilen Tokens auf unterschiedliche Experten; die Gruppen können unterschiedlich groß sein. In Version 2.14 seien Gruppenoffsets zunächst auf die CPU kopiert und die Gruppen einzeln abgearbeitet worden. Die neuen Metal-Kernel lesen die Offsets direkt auf der GPU; für kleine Gruppen, die beim Decodieren häufig auftreten, gebe es einen eigenen Kernelpfad. [1]

Bei der berichteten MoE-Leistung ist allerdings Vorsicht geboten. Im Überblick nennt der Beitrag für Qwen3.6-35B-A3B auf einem M3 Ultra mit `torch.compile` einen Anstieg von 9,4 auf 61,3 Tokens pro Sekunde und für LFM2.5-8B-A1B von 23,6 auf 123,6. Später zeigt er für dieselben Modelle andere Ausgangs- und Endwerte: bei Qwen 38,7 auf 51,7 Tokens pro Sekunde bei Kontextlänge 512 und 36,8 auf 48,7 bei 2048; bei LFM 77,1 auf 103,2 beziehungsweise 74,9 auf 98,7. [1]

Der Beitrag erläutert nicht ausreichend, wie sich die jeweiligen Testbedingungen unterscheiden. Die Zahlen aus dem Überblick legen eine fünf- bis sechsfache Steigerung nahe, während die später dargestellten Messreihen eher rund 1,3-fache Zuwächse zeigen. Ohne eine nachvollziehbare Zuordnung der Setups sollten Sie daraus keinen einzelnen allgemeinen Beschleunigungsfaktor ableiten. Auch die genannten Werte sind Messungen des Beitragsteams und keine unabhängige Bestätigung. [1]

Für die Praxis heißt das: Der technische Ansatz – weniger CPU-GPU-Abstimmung und spezialisierte Rechenpfade für kleine Gruppen – ist klar beschrieben; die Größenordnung des Nutzens muss jedoch für das konkrete Modell und den eigenen Kontextumfang gemessen werden. Das gilt insbesondere, wenn Ihre Anwendung auf stabile Latenz, hohen Durchsatz oder eine bestimmte lokale Mac-Konfiguration ausgelegt ist. [1]

Weitere Metal-Kernel für lineare Algebra und Training

PyTorch 2.15 soll außerdem zusätzliche Operationen der linearen Algebra auf MPS ausführen können. Genannt werden LU-Faktorisierung und -Lösung sowie Dreieckssysteme für komplexe Tensoren vom Typ `complex64`. Für kleine FP32-Matrizen bis 4 × 4 beschreibt der Beitrag einen Metal-Kernel, der Faktorisierung und Lösung verbindet. QR-Zerlegungen erhalten demnach blockierte Updates; für bestimmte Dreieckssysteme in Gated-DeltaNet-Workloads gibt es einen spezialisierten Pfad. [1]

Auch für Singulärwertzerlegung meldet das Team Verbesserungen beim Umgang mit sehr kleinen Singularwerten, sehr großen oder kleinen Eingabewerten und der Vervollständigung einer Basis bei `full_matrices=True`. Diese Änderungen sollen laut Beitrag auch Ergebnisse von Pseudoinversen und Least-Squares-Berechnungen verlässlicher machen. Die Quelle quantifiziert diese Verbesserungen nicht allgemein; Unternehmen mit numerisch sensiblen Workloads sollten daher weiterhin eigene Korrektheitstests durchführen. [1]

Für Audio-, Bild- und Trainingspfade führt die Ankündigung neue oder angepasste Kernel für `conv1d`, Padding, Dropout, Upsampling im Backward-Pass und den Backward-Pass von `conv2d` im Channels-last-Format auf. Bei Reflection- und Replication-Padding sollen die neuen Metal-Implementierungen sowohl schneller sein als auch Korrektheitsprobleme im Backward-Pass beheben. Diese Aussagen beziehen sich auf die vom Team beschriebenen Änderungen; die tatsächliche Relevanz hängt von den Operationen und Tensorformen im jeweiligen Modell ab. [1]

Video-Decodierung: weniger Treiberspeicher im konkreten Test

Der auffälligste Speicherwert betrifft laut Hugging Face das geteilte VAE-Decodieren von Wan2.2. Bei einem vollständigen Decode mit 28 Tiles fallen dem Beitrag zufolge 8.764 Padding-Aufrufe an. Die Umstellung des Constant-Paddings von MPSGraph auf Metal senke den Spitzenwert des Treiberspeichers in diesem Test von rund 270,1 auf 8,1 GiB. [1]

Wichtig ist die Unterscheidung zwischen Treiberspeicher und den Tensoren, die PyTorch selbst ausweist. Der Beitrag beziffert den Spitzenwert der aktuellen Tensorallokationen auf 4,422 GiB mit MPSGraph-Padding und 4,095 GiB mit Metal-Padding. Auch der vom Allocator reservierte Spitzenwert bleibt in beiden Messungen bei 8,070 GiB; stark verändert sich der ausgewiesene Gesamtwert des Treiberspeichers außerhalb des Allocators. Die oft zitierte Reduktion von 270 auf 8 GiB bedeutet daher nicht, dass die Tensorbelegung selbst um denselben Faktor sinkt. [1]

Als Analyse lässt sich daraus ableiten, dass die Änderung in diesem spezifischen geteilten VAE-Workflow vor allem die mit der bisherigen Padding-Ausführung verbundene Speicherbelastung adressiert. Der Messwert belegt nicht, dass andere Video-Modelle oder alle MPS-Anwendungen denselben Rückgang erreichen. Für Teams, die solche Pipelines einsetzen, ist ein Vergleich der gesamten Speicherbilanz – einschließlich Treiberspeicher – aussagekräftiger als ein Blick allein auf die Tensorallokationen. [1]

Korrektheit, Softmax und mehr Kontrolle über Streams

Auch Korrektheitsverbesserungen sind Teil der Ankündigung. Das Team berichtet, dass ein geändertes Constant-Padding den zuvor fehlerhaften Qwen-Image-2.1-VAE-Encoder auf MPS korrigiere: Ein Encode-Decode-Durchlauf erreiche nun 29,95 dB PSNR und liege damit laut Beitrag näher am CPU-Ergebnis als der vorherige Wert von 10,06 dB. Der Beitrag verweist auf eine Fehlermeldung aus ComfyUI; die Zahlen sind jedoch ebenfalls Angaben der Projektbeteiligten und keine unabhängige Qualitätsprüfung. [1]

Für Token-Sampling nennt der Beitrag eigene Metal-Kernel für `softmax` und `log_softmax`. Bei einer FP32-Zeile mit 128.256 Logits sinke die gemessene Laufzeit demnach von 57 auf 7 Mikrosekunden, also auf etwa ein Achtel. Gerade bei großen Ausgabewortschätzen kann dieser Schritt relevant sein; die Quelle zeigt jedoch einen Mikrobenchmark und keine durchgängige Messung eines vollständigen Produktionssystems. [1]

Neu sind laut Beitrag außerdem öffentliche MPS-Streams und ein Kontextmanager, mit denen Python-Code Arbeit einem Stream zuweisen kann. `Tensor.record_stream` soll dem Allocator mitteilen, dass ein Tensor in einem anderen Stream verwendet wird. Das schafft zusätzliche Kontrolle über die Ausführung, bedeutet aber auch, dass Anwendungen bei asynchroner Nutzung Synchronisation und Lebensdauer von Tensoren korrekt behandeln müssen. [1]

Weitere neu unterstützte Operationen umfassen unter anderem `frexp`, `logspace`, `take`, `put_` und bestimmte Vergleiche mit vorzeichenlosen Ganzzahlen. Für `logspace` nennt die Quelle eine Einschränkung bei ganzzahligen oder booleschen Ausgaben mit mehr als einem Element. Auch die MPS-Implementierung von Scaled-Dot-Product-Attention erhält laut Beitrag eine Korrektur für Broadcasting über Batch- und Head-Dimensionen. [1]

Was Unternehmen vor einem Wechsel prüfen sollten

Die Neuerungen betreffen unterschiedliche Ebenen: Speicherformate, einzelne Operatoren, GPU- und CPU-Abstimmung sowie die Fehlerkorrektheit bestimmter Modellpfade. Ein Versionswechsel kann deshalb je nach Workload sehr unterschiedliche Auswirkungen haben. Für einen aussagekräftigen Vergleich sollten Sie dieselben Modelle, Eingabeformen und Kontextlängen auf der bisherigen und der neuen Version ausführen und neben Tokens pro Sekunde auch Speicherverbrauch, Ergebnisqualität und Laufzeit einzelner Operationen erfassen. Diese Empfehlung folgt aus den unterschiedlichen Messgrößen und Testbedingungen, die der Beitrag selbst verwendet. [1]

Prüfen Sie außerdem die Kompatibilität von macOS und Python sowie die Verfügbarkeit der tatsächlich benötigten Operatoren. Die MPS-Dokumentation beschreibt den Backend-Ansatz und die Nutzung des Geräts, ersetzt aber keine Prüfung der konkreten Modellbibliotheken oder des eigenen Workflows. Die Apple-Seite weist für ihre dort dokumentierte PyTorch-Version zudem darauf hin, dass sich MPS im Beta-Status befindet; diese Aussage bezieht sich ausdrücklich auf PyTorch 2.11 und ist kein Statusnachweis für Version 2.15. [1][2][3]

Für die nächste Version skizziert Hugging Face bereits Änderungen in PyTorch 2.16, darunter vollständig auf Metal ausgeführte Attention und weitere Migrationen weg von MPSGraph. Ein Teil der Arbeiten sei bereits in `main` oder Nightly-Versionen verfügbar, andere Änderungen befänden sich noch in Prüfung. Die dazu genannten Leistungswerte sind daher Vorschauen und keine Zusage für die ausgelieferte Version. [1]

Unterm Strich zeichnet PyTorch 2.15 laut Ankündigung ein breiteres Einsatzfeld für MPS: FP8 kann den Speicherbedarf der Werte reduzieren, spezialisierte Kernel sollen bestimmte LLM- und Bildverarbeitungspfade beschleunigen, und einzelne Korrekturen adressieren Fehler in konkreten Workflows. Die stärksten Zahlen sollten Sie jedoch differenziert behandeln: Der Blog ist die Primärquelle für die angekündigten Änderungen, aber keine unabhängige Leistungsvalidierung; bei den MoE-Werten bleibt zudem eine nicht erklärte Abweichung bestehen. [1]

Quellen

  1. [1] MPS in PyTorch 2.15 — https://huggingface.co/blog/mps-pytorch-2-15 (abgerufen am 2026-10-20)
  2. [2] MPS backend — PyTorch 2.14 documentation — https://docs.pytorch.org/docs/stable/notes/mps.html (abgerufen am 2026-10-20)
  3. [3] Accelerated PyTorch training on Mac - Metal - Apple Developer — https://developer.apple.com/metal/pytorch (abgerufen am 2026-10-20)

//Nächster Artikel

Cybersicherheit

ECHOTRIBBLE: US-Armee prüft autonome Cyberagenten mit offensivem Auftrag

ECHOTRIBBLE soll autonome Cyberagenten einsetzen. Unterlagen skizzieren selbstständige Ausbreitung; Fachleute warnen vor Kollateralschäden. [S1][S2]

// Artikel teilen

Bei Google bevorzugen

// Dranbleiben

Mindverse News folgen

Neue Meldungen erhalten Sie über unseren RSS-Feed oder auf LinkedIn.

Recherchieren Sie KI-News wie diese selbst — mit Mindverse Studio.

7 Tage kostenlos testen — ohne Kreditkarte, mit 200 Credits. Für Fragen zur Umsetzung buchen Sie eine persönliche Demo.