Kürzlich wurde die neue Version 2.8 des Open-Source-Maschinenlernframeworks PyTorch offiziell veröffentlicht. Diese Version hat große Aufmerksamkeit erregt, insbesondere durch die Verbesserung der Inferenzleistung quantisierter großer Sprachmodelle (LLM), insbesondere auf Intel-CPU. Dieses Update verbessert nicht nur signifikant die Inferenzgeschwindigkeit im Offline-Modus, sondern bietet erstmals experimentellen Support für einen verteilten Backend auf Intel-GPU.

Im PyTorch 2.8 haben Entwickler durch Optimierung von Algorithmen und Einführung neuer Technologien die Inferenzgeschwindigkeit quantisierter LLM deutlich gesteigert. Konkret unterstützt diese Version verschiedene Quantisierungsmodi wie A16W8, DA8W8 und A16W4. Testdaten zeigen, dass bei der Ausführung des Llama-3.1-8B-Modells auf der sechsten Generation von Intel Xeon mit M=8, K und 32 Kernen, die End-to-End-Verzögerung um mehr als 20 % reduziert wurde und die Leistung sogar mit einigen beliebten LLM-Service-Frameworks mithalten kann.

image.png

Zudem ist ein weiterer Highlight dieses Updates die experimentelle Unterstützung des XCCL-verteilten Backends für Intel-discrete GPU in PyTorch 2.8. Diese Funktion bietet mehr Flexibilität für verschiedene Trainingsmodi und ermöglicht es Entwicklern, das Potenzial ihrer Modelle in einer breiteren Hardwareumgebung zu nutzen.

Außerdem beinhaltet PyTorch 2.8 eine Reihe wichtiger Verbesserungen. Zum Beispiel wird durch die Einführung von SYCL-Support die C++-Erweiterungs-API von PyTorch reicher, und XPU-Geräte erhalten zudem Unterstützung für das A16W4-Modus. Darüber hinaus hat das Entwicklungsteam stabile Schnittstellen für libtorch ABI bereitgestellt, wodurch Kompatibilitätsprobleme in Drittanbieter-C++/CUDA-Erweiterungen reduziert werden.

Die Unterstützung für ROCm wurde ebenfalls verbessert, indem Unterstützung für den gfx950-Architektur hinzugefügt wurde. Zusammen mit TorchInductor und AOTInductor werden mehrere Kernel-Vorlagen zur automatischen Optimierung bereitgestellt. Außerdem wurden Kontrollflussoperationen wie bedingte Anweisungen und Schleifen eingeführt, was die Kompilierung und Exportierung von Modellen effizienter macht.

Die Veröffentlichung von PyTorch 2.8 bringt zweifellos mehr Möglichkeiten in den Bereich des maschinellen Lernens und bietet Entwicklern leistungsstärkere Werkzeuge, die die Anwendung und Entwicklung großer Sprachmodelle voranbringen.

Download-Link: https://github.com/pytorch/pytorch/releases/tag/v2.8.0