Direct Machine Learning (DirectML)

Direct Machine Learning (DirectML) ist eine systemnahe API für maschinelles Lernen (Machine Learning). Sie hat eine vertraute (natives C++, Nano-COM) Schnittstelle und einen Workflow im Stil von DirectX 12. Sie können Machine Learning-Rückschlussworkloads in Ihr Spiel, Ihre Engine, Ihre Middleware, Ihr Back-End oder in eine andere Anwendung integrieren. DirectML wird von jeder DirectX 12-kompatiblen Hardware unterstützt.

DirectML wird in Windows 10, Version 1903, und in der entsprechenden Version des Windows SDK eingeführt.

Schauen Sie sich auch unsere Landing Page an.

In diesem Abschnitt

Thema Beschreibung
Introduction to DirectML (Einführung in DirectML) Direktes Maschinelles Lernen (DirectML) ist eine systemnahe API für maschinelles Lernen (ML).
DirectML-Versionsverlauf DirectML ist eine Systemkomponente von Windows 10 und steht auch als eigenständiges weitervertreibbares Paket zur Verfügung.
DirectML-Verlauf auf Featureebene Ein Manifest der Typen, die in jeder Featureebene eingeführt wurden.
Binding in DirectML (Bindung in DirectML) In DirectML bezieht sich die Bindung auf die Anlage von Ressourcen an die Pipeline für die GPU, die während der Initialisierung und Ausführung Ihrer Machine Learning-Operatoren verwendet werden soll. Diese Ressourcen können z. B. Eingabe- und Ausgabe-Tensoren sowie alle temporären oder persistenten Ressourcen sein, die der Operator benötigt.
UAV-Barrieren und Ressourcenzustandsbarrieren in DirectML Beschreibt die Richtigkeit der Vorteile von Barrieren und wie Sie mit ihnen in DirectML arbeiten können.
Ressourcenlebensdauer und -synchronisierung Um ein nicht definiertes Verhalten zu vermeiden, muss Ihre DirectML-Anwendung Objektlebensdauern und die Synchronisierung zwischen der CPU und der GPU ordnungsgemäß verwalten.
Verwenden von Schritten zum Ausdrücken von Auffüllung, Arbeitsspeicherlayout DirectML-Tensoren werden durch Eigenschaften beschrieben, die als Größen und die Fortschritte des Tensors bezeichnet werden.
Verwendung von Fused-Operatoren zur Leistungssteigerung Einige DirectML-Operatoren unterstützen ein Konzept, das als Fusion bezeichnet wird. Die Operator-Fusion ist eine Möglichkeit, die Leistung zu verbessern, indem sie einen Operator (in der Regel eine Aktivierungsfunktion) in einen anderen Operator zusammenführen, sodass sie zusammen ausgeführt werden, ohne dass ein Roundtrip zum Speicher erforderlich ist.
Verwenden der DirectML-Debugebene Die DirectML-Debug-Ebene ist eine optionale Entwicklungszeitkomponente, die Sie beim Debuggen ihres DirectML-Codes unterstützt.
Behandeln von Fehlern und Entfernen von Geräten In diesem Thema wird erläutert, wie Sie die DirectML-Geräteentfernung und andere Fehlerbedingungen debuggen.
DirectMLX DirectMLX ist eine C++ headerbasierte Hilfsprogramm-Bibliothek für DirectML, die das Verfassen einzelner Operatoren in Diagrammen erleichtert.
DirectML Hilfsprogrammfunktionen Codeauflistungen wichtiger DirectML-Hilfsprogrammfunktionen.
DirectML Sample Applications (DirectML-Beispielanwendungen) Verlinkungen zu DirectML-Beispielanwendungen, einschließlich eines Beispiels einer minimalen DirectML-Anwendung.
GPU-beschleunigtes ML-Training Beschreibt, was derzeit von der GPU beschleunigten Ml-Schulung (Machine Learning) für die Windows-Subsystem für Linux (WSL) und native Windows unterstützt wird.
DirectML-API-Referenz In diesem Abschnitt werden Direct Machine Learning (DirectML)-APIs behandelt, die in DirectML.h deklariert sind.