Direct Machine Learning (DirectML)

Direct Machine Learning (DirectML) は、機械学習向けの低レベルの API です。 これは、DirectX 12 のスタイルの使い慣れた (ネイティブ C++、nano-COM) プログラミング インターフェイスとワークフローを備えています。 機械学習の推測ワークロードをゲーム、エンジン、ミドルウェア、バックエンド、およびその他のアプリケーションに統合できます。 DirectML は、すべての DirectX 12 と互換性のあるハードウェアによってサポートされています。

DirectML は、Windows 10、バージョン 1903、および Windows SDK の対応するバージョンで導入されます。

ランディング ページも確認してください。

このセクションの内容

裁判官 説明
DirectML の概要 Direct Machine Learning (DirectML) は、機械学習 (ML) 向けの低水準 API です。
DirectML のバージョン履歴 DirectML は Windows 10 のシステム コンポーネントであり、スタンドアロンの再頒布可能パッケージとしても利用できます。
DirectML 機能レベルの履歴 各機能レベルで導入された型のマニフェスト。
DirectML のバインド DirectML では、"バインド" は、お使いの機械学習演算子の初期化や実行中に GPU によって使用されるパイプラインへのリソースの添付ファイルを差します。 これらのリソースには、たとえば、入力および出力テンソルのほか、演算子が必要とする任意の一時的または永続的なリソースを使用できます。
DirectML での UAV の障壁とリソース状態の障壁 障壁の正確性の利点と、DirectML でのそれらの利用方法を説明します。
リソースの有効期間と同期 未定義の動作を回避するために、DirectML アプリケーションはオブジェクトの有効期間と CPU/GPU 間の同期を正しく管理する必要があります。
ストライドを使用した埋め込みとメモリ レイアウトの表現 テンソルの "サイズ" や "ストライド" として知られるプロパティにより DirectML テンソルを説明します。
組み合わせ演算子を使用したパフォーマンスの向上 一部の DirectML 演算子では、フュージョン と呼ばれる概念がサポートされています。 演算子のフュージョンは、メモリへのラウンドトリップを必要とせずに一緒に実行されるように、1 つの演算子 (通常はアクティブ化関数) を別の演算子に統合することでパフォーマンスを向上させる方法です。
DirectML デバッグ レイヤーの使用 DirectML デバッグ レイヤーは、DirectML コードのデバッグに役に立つオプションの開発時コンポーネントです。
エラーとデバイス削除の処理 このトピックでは、DirectML デバイス削除やその他のエラー状態をデバッグする方法について説明します。
DirectMLX DirectMLX は DirectML 用の C++ ヘッダー専用ヘルパー ライブラリであり、個々の演算子をグラフに簡単に作成することを目的としています。
DirectML ヘルパー関数 重要な DirectML ヘルパー関数のコード リスティング
DirectML のサンプル アプリケーション 最小限の DirectML アプリケーションのサンプルを含む、DirectML サンプル アプリケーションへのリンク
GPU 高速化による ML トレーニング Linux 用 Windows サブシステム (WSL) とネイティブ Windows の GPU 高速機械学習 (ML) トレーニングで現在サポートされている内容について説明します。
DirectML API リファレンス このセクションでは、DirectML.h で宣言されている Direct Machine Learning (DirectML) API について説明します。