PyTorch: ExecuTorch MLX Delegate bringt 3–6× schnellere Modellausführung auf Apple-Silicon-GPUs
Das PyTorch-Team veröffentlichte den experimentellen ExecuTorch MLX Delegate — ein Backend, das das Apple-MLX-Framework und Metal-GPU-Kernel für 3- bis 6-fachen Throughput auf Apple-Silicon-Chips nutzt. Unterstützt Llama 3.2, Qwen 3, Phi-4 mini, Whisper und Voxtral-Echtzeit-Streaming-Transkription.
Dieser Artikel wurde mithilfe von künstlicher Intelligenz aus Primärquellen erstellt.
Das PyTorch-Team veröffentlichte den experimentellen ExecuTorch MLX Delegate — ein neues Backend, das PyTorch-Modelle auf macOS mithilfe des Apple-MLX-Frameworks und optimierter Metal-GPU-Kernel beschleunigt. Das Ergebnis sind generative KI-Workloads mit 3- bis 6-fachem Throughput im Vergleich zu bestehenden ExecuTorch-Delegates auf macOS.
Wie funktioniert der ExecuTorch MLX Delegate?
ExecuTorch ist PyTorchs Runtime für On-Device-Inferenz, die das Modell über torch.export exportiert und dann in ein .pte-Format herunterstuft, das zur Ausführung bereit ist. Der MLX Delegate fügt einen neuen Schritt hinzu: MLXPartitioner analysiert den exportierten Graphen und delegiert kompatible Teilgraphen direkt an Apple MLX, das sie über den Apple-Silicon-GPU ausführt.
Der Arbeitsablauf ist dreistufig:
- Modellexport mit
torch.export - Herunterstufen mit
to_edge_transform_and_lowerunter Verwendung vonMLXPartitioner - Ausführen der
.pte-Datei über die ExecuTorch-Runtime
Der Delegate unterstützt etwa 90 ATen-Operationen, einschließlich quantisiertem Matmul, Multi-Head-Attention, Rotary-Position-Embeddings und Mixture-of-Experts-Routing.
Welche Modelle werden unterstützt?
Ist Voxtral wirklich für Live-Transkription bereit?
Ja — der MLX Delegate unterstützt Mistral Voxtral Realtime (4B) mit Live-Mikrofoneingabe für Echtzeit-Streaming-Transkription direkt auf dem Mac, ohne Internetverbindung.
Vollständige Liste unterstützter Modelle:
- LLMs: Llama 3.2 (1B), Qwen 3 (0,6B, 1,7B, 4B), Phi-4 mini (3,8B), Gemma 3 (1B, 4B)
- MoE-Modelle: Qwen 3.5 35B-A3B mit 256 Experten und Top-8-Routing
- Sprache-zu-Text: OpenAI Whisper (tiny bis large-v3-turbo), NVIDIA Parakeet TDT (0,6B), Mistral Voxtral (3B)
Quantisierung ist in BF16, FP16, FP32 und 2/4/8-Bit-affiner Quantisierung über TorchAO sowie NVFP4 verfügbar.
Einschränkungen und Status
Der Delegate ist als experimentell gekennzeichnet — APIs und unterstützte Funktionen können sich ändern. Die Beschleunigung ist ausschließlich auf Apple-Silicon-Macs (M1/M2/M3/M4) mit Metal-GPU-Unterstützung verfügbar; Intel-Macs werden nicht unterstützt. Alle anderen Plattformen (Android, Linux, Windows) verwenden weiterhin vorhandene ExecuTorch-Delegates.
Der Quellcode ist im PyTorch-ExecuTorch-Repository auf GitHub verfügbar.
Häufig gestellte Fragen
- Was ist ExecuTorch?
- ExecuTorch ist PyTorchs Runtime für On-Device-Inferenz — das Ausführen von KI-Modellen direkt auf dem Gerät, ohne Cloud. Es ermöglicht den Modellexport über torch.export und die Ausführung auf verschiedenen Hardware-Backends über eine einheitliche API.
- Was ist Apple MLX?
- Apple MLX ist ein Open-Source-Framework für maschinelles Lernen, optimiert für Apple Silicon (M1/M2/M3/M4). Es nutzt ein einheitliches Speichermodell und Apples Metal-GPU-Kernel für maximale Leistung auf Mac-Computern.
- Was bedeutet „Delegate" im ExecuTorch-Kontext?
- Ein Delegate ist ein Backend-Modul, das ExecuTorch verwendet, um Teile der Berechnung an eine bestimmte Hardware oder ein Framework weiterzuleiten — in diesem Fall Apple MLX. MLXPartitioner identifiziert automatisch Teilgraphen, die per MLX beschleunigt werden können, und delegiert sie an den Apple-Silicon-GPU.