Direct Machine Learning (DirectML)Direct Machine Learning (DirectML)

Direct Machine Learning (DirectML) は、機械学習向けの低レベルの API です。Direct Machine Learning (DirectML) is a low-level API for machine learning. DirectX 12 のスタイルの使い慣れた (ネイティブ C++、nano-COM) プログラミング インターフェイスとワークフローが備わっています。It has a familiar (native C++, nano-COM) programming interface and workflow in the style of DirectX 12. 機械学習の推測ワークロードをゲーム、エンジン、ミドルウェア、バックエンド、およびその他のアプリケーションに統合できます。You can integrate machine learning inferencing workloads into your game, engine, middleware, backend, or other application. DirectML は、すべての DirectX 12 と互換性のあるハードウェアに対応しています。DirectML is supported by all DirectX 12-compatible hardware.

DirectML は、Windows 10、バージョン 1903、および Windows SDK の対応するバージョンで導入されます。DirectML is introduced in Windows 10, version 1903, and in the corresponding version of the Windows SDK.

このセクションの内容In this section

トピックTopic 説明Description
DirectML の概要Introduction to DirectML Direct Machine Learning (DirectML) は、機械学習 (ML) 向けの低レベルの API です。Direct Machine Learning (DirectML) is a low-level API for machine learning (ML).
DirectML のバインドBinding in DirectML DirectML では、"バインド" は、お使いの機械学習演算子の初期化や実行中に GPU によって使用されるパイプラインへのリソースの添付ファイルを差します。In DirectML, binding refers to the attachment of resources to the pipeline for the GPU to use during the initialization and execution of your machine learning operators. これらのリソースは入力および出力テンソル (演算子に必要な一時的または永続的なリソースなど) にすることができます。These resources can be input and output tensors, for example, as well as any temporary or persistent resources that the operator needs.
DirectML での UAV の障壁とリソース状態の障壁UAV barriers and resource state barriers in DirectML 障壁の正確性の利点と、DirectML でのそれらの利用方法を説明します。Describes the correctness benefits of barriers, and how you can work with them in DirectML.
ストライドを使用した埋め込みとメモリ レイアウトの表現Using strides to express padding and memory layout テンソルの "サイズ" や "ストライド" として知られるプロパティにより DirectML テンソルを説明します。DirectML tensors are described by properties known as the sizes and the strides of the tensor.
リソースの有効期間と同期Resource lifetime and synchronization 未定義の動作を回避するために、DirectML アプリケーションでは CPU と GPU の間でオブジェクトの有効期限と同期が正しく管理される必要があります。In order to avoid undefined behavior, your DirectML application must correctly manage object lifetimes and synchronization between the CPU and the GPU.
DirectML デバッグ レイヤーの使用Using the DirectML debug layer DirectML デバッグ レイヤーは、DirectML コードのデバッグに役に立つオプションの開発時コンポーネントです。The DirectML debug layer is an optional development-time component that helps you in debugging your DirectML code.
エラーとデバイス削除の処理Handling errors and device-removal このトピックでは、DirectML デバイス削除やその他のエラー状態をデバッグする方法について説明します。This topic discusses how to debug DirectML device-removal, and other error conditions.
DirectML ヘルパー関数DirectML helper functions 重要な DirectML ヘルパー関数のコード リスティングCode listings of essential DirectML helper functions.
DirectML のサンプル アプリケーションDirectML sample applications 最小限の DirectML アプリケーションのサンプルを含む、DirectML サンプル アプリケーションへのリンクLinks to DirectML sample applications, including a sample of a minimal DirectML application.