Win32 API 日本語リファレンス
ホームAI.MachineLearning.DirectML › DML_EXECUTION_FLAGS

DML_EXECUTION_FLAGS

列挙型フラグ
基底型i4

メンバー 4

名前10進16進説明
DML_EXECUTION_FLAG_NONE00x0実行フラグを指定しません。
DML_EXECUTION_FLAG_ALLOW_HALF_PRECISION_COMPUTATION10x1ハードウェアデバイスがサポートしている場合に、半精度浮動小数点数 (FP16) を使用した計算を DirectML に許可します。
DML_EXECUTION_FLAG_DISABLE_META_COMMANDS20x2メタコマンドではなく DirectCompute を使用して演算子を実行するよう DirectML に強制します。DirectML は既定では、利用可能な場合にメタコマンドを使用します。
DML_EXECUTION_FLAG_DESCRIPTORS_VOLATILE40x4

演算子の実行をコマンドリストに記録した後、コマンドキューに送信する前にバインドを変更できるようにします。既定では、このフラグを設定していない場合、演算子をコマンドリストに記録する前に、バインドテーブル上のすべてのバインドを設定しておく必要があります。

このフラグを使用すると、遅延バインド、つまりコマンドリストに既に記録済みの演算子に対してバインドを設定 (または変更) できます。ただし、静的なディスクリプターアクセスをルートディスクリプターアクセスへ昇格させることがドライバーに対して禁止されるため、一部のハードウェアではパフォーマンスが低下する場合があります。

詳細については、DESCRIPTORS_VOLATILE を参照してください。

公式ドキュメント

演算子の実行を制御するためのオプションを DirectML に指定します。これらのフラグはビット単位のOR で結合して、複数のフラグを同時に指定できます。

出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)

各言語での定義

列挙メンバーの定義。HSP タブは #define global(値は16進)。

typedef enum DML_EXECUTION_FLAGS : int {
    DML_EXECUTION_FLAG_NONE = 0,
    DML_EXECUTION_FLAG_ALLOW_HALF_PRECISION_COMPUTATION = 1,
    DML_EXECUTION_FLAG_DISABLE_META_COMMANDS = 2,
    DML_EXECUTION_FLAG_DESCRIPTORS_VOLATILE = 4
} DML_EXECUTION_FLAGS;
[Flags]
public enum DML_EXECUTION_FLAGS : int
{
    DML_EXECUTION_FLAG_NONE = 0,
    DML_EXECUTION_FLAG_ALLOW_HALF_PRECISION_COMPUTATION = 1,
    DML_EXECUTION_FLAG_DISABLE_META_COMMANDS = 2,
    DML_EXECUTION_FLAG_DESCRIPTORS_VOLATILE = 4,
}
<Flags>
Public Enum DML_EXECUTION_FLAGS As Integer
    DML_EXECUTION_FLAG_NONE = 0
    DML_EXECUTION_FLAG_ALLOW_HALF_PRECISION_COMPUTATION = 1
    DML_EXECUTION_FLAG_DISABLE_META_COMMANDS = 2
    DML_EXECUTION_FLAG_DESCRIPTORS_VOLATILE = 4
End Enum
import enum

class DML_EXECUTION_FLAGS(enum.IntFlag):
    DML_EXECUTION_FLAG_NONE = 0
    DML_EXECUTION_FLAG_ALLOW_HALF_PRECISION_COMPUTATION = 1
    DML_EXECUTION_FLAG_DISABLE_META_COMMANDS = 2
    DML_EXECUTION_FLAG_DESCRIPTORS_VOLATILE = 4
// DML_EXECUTION_FLAGS (flags)
pub const DML_EXECUTION_FLAG_NONE: i32 = 0;
pub const DML_EXECUTION_FLAG_ALLOW_HALF_PRECISION_COMPUTATION: i32 = 1;
pub const DML_EXECUTION_FLAG_DISABLE_META_COMMANDS: i32 = 2;
pub const DML_EXECUTION_FLAG_DESCRIPTORS_VOLATILE: i32 = 4;
// DML_EXECUTION_FLAGS
const (
	DML_EXECUTION_FLAG_NONE int32 = 0
	DML_EXECUTION_FLAG_ALLOW_HALF_PRECISION_COMPUTATION int32 = 1
	DML_EXECUTION_FLAG_DISABLE_META_COMMANDS int32 = 2
	DML_EXECUTION_FLAG_DESCRIPTORS_VOLATILE int32 = 4
)
const
  DML_EXECUTION_FLAG_NONE = 0;
  DML_EXECUTION_FLAG_ALLOW_HALF_PRECISION_COMPUTATION = 1;
  DML_EXECUTION_FLAG_DISABLE_META_COMMANDS = 2;
  DML_EXECUTION_FLAG_DESCRIPTORS_VOLATILE = 4;
// DML_EXECUTION_FLAGS
pub const DML_EXECUTION_FLAG_NONE: i32 = 0;
pub const DML_EXECUTION_FLAG_ALLOW_HALF_PRECISION_COMPUTATION: i32 = 1;
pub const DML_EXECUTION_FLAG_DISABLE_META_COMMANDS: i32 = 2;
pub const DML_EXECUTION_FLAG_DESCRIPTORS_VOLATILE: i32 = 4;
const
  DML_EXECUTION_FLAG_NONE* = 0
  DML_EXECUTION_FLAG_ALLOW_HALF_PRECISION_COMPUTATION* = 1
  DML_EXECUTION_FLAG_DISABLE_META_COMMANDS* = 2
  DML_EXECUTION_FLAG_DESCRIPTORS_VOLATILE* = 4
enum DML_EXECUTION_FLAGS : int {
    DML_EXECUTION_FLAG_NONE = 0,
    DML_EXECUTION_FLAG_ALLOW_HALF_PRECISION_COMPUTATION = 1,
    DML_EXECUTION_FLAG_DISABLE_META_COMMANDS = 2,
    DML_EXECUTION_FLAG_DESCRIPTORS_VOLATILE = 4,
}
#define global DML_EXECUTION_FLAG_NONE                             0x0
#define global DML_EXECUTION_FLAG_ALLOW_HALF_PRECISION_COMPUTATION 0x1
#define global DML_EXECUTION_FLAG_DISABLE_META_COMMANDS            0x2
#define global DML_EXECUTION_FLAG_DESCRIPTORS_VOLATILE             0x4
; ※フラグ列挙型。ビットORで組み合わせ可(例: FOO|BAR)。