DML_FEATURE_LEVEL enumeration (directml.h)
Defines constants that specify a DirectML feature level. A feature level defines a broad umbrella of functionality supported by DirectML. In using DirectML, you can target specific feature levels, depending on a tradeoff between the level of functionality needed versus the version of DirectML required.
Feature levels in DirectML are strict supersets of one another. This means that every feature level necessarily supports everything that exists in every feature level below (earlier than) it.
For example, DML_FEATURE_LEVEL_2_0
supports everything that DML_FEATURE_LEVEL_1_0
does in addition to some new functionality. Similarly, DML_FEATURE_LEVEL_2_1
supports everything that DML_FEATURE_LEVEL_2_0
and DML_FEATURE_LEVEL_1_0
do plus some additional features.
You can specify a minimum feature level when creating the DirectML device using DMLCreateDevice1. This has the effect of causing device creation to fail if the underlying DirectML implementation is unable to satisfy the requested feature level. This is useful, for example, if using the system version of DirectML and a user runs your application on an older version of Windows 10.
A DirectML device might support feature levels above the minimum feature level requested through DMLCreateDevice1. You can query the device for its supported feature levels using IDMLDevice::CheckFeatureSupport.
For a list of new capabilities included in each feature level, see DirectML feature level history.
Syntax
typedef enum DML_FEATURE_LEVEL {
DML_FEATURE_LEVEL_1_0 = 0x1000,
DML_FEATURE_LEVEL_2_0 = 0x2000,
DML_FEATURE_LEVEL_2_1 = 0x2100,
DML_FEATURE_LEVEL_3_0 = 0x3000,
DML_FEATURE_LEVEL_3_1,
DML_FEATURE_LEVEL_4_0,
DML_FEATURE_LEVEL_4_1,
DML_FEATURE_LEVEL_5_0,
DML_FEATURE_LEVEL_5_1,
DML_FEATURE_LEVEL_5_2,
DML_FEATURE_LEVEL_6_0,
DML_FEATURE_LEVEL_6_1,
DML_FEATURE_LEVEL_6_2
} ;
Constants
DML_FEATURE_LEVEL_1_0 Value: 0x1000 Specifies feature level 1_0. |
DML_FEATURE_LEVEL_2_0 Value: 0x2000 Specifies feature level 2_0. |
DML_FEATURE_LEVEL_2_1 Value: 0x2100 Specifies feature level 2_1. |
DML_FEATURE_LEVEL_3_0 Value: 0x3000 Specifies feature level 3_0. |
DML_FEATURE_LEVEL_3_1 Specifies feature level 3_1. |
DML_FEATURE_LEVEL_4_0 Specifies feature level 4_0. |
DML_FEATURE_LEVEL_4_1 Specifies feature level 4_1. |
DML_FEATURE_LEVEL_5_0 Specifies feature level 5_0. |
Remarks
The DML_FEATURE_LEVEL_5_1 constant was introduced in DML_FEATURE_LEVEL_5_1
. DML_FEATURE_LEVEL_5_1 specifies feature level 5_1.
The DML_FEATURE_LEVEL_5_2 constant was introduced in DML_FEATURE_LEVEL_5_2
. DML_FEATURE_LEVEL_5_2 specifies feature level 5_2.
The DML_FEATURE_LEVEL_6_0 constant was introduced in DML_FEATURE_LEVEL_6_0
. DML_FEATURE_LEVEL_6_0 specifies feature level 6_0.
The DML_FEATURE_LEVEL_6_1 constant was introduced in DML_FEATURE_LEVEL_6_1
. DML_FEATURE_LEVEL_6_1 specifies feature level 6_1.
The DML_FEATURE_LEVEL_6_2 constant was introduced in DML_FEATURE_LEVEL_6_2
. DML_FEATURE_LEVEL_6_2 specifies feature level 6_2.
The DML_FEATURE_LEVEL_6_3 constant was introduced in DML_FEATURE_LEVEL_6_3
. DML_FEATURE_LEVEL_6_3 specifies feature level 6_3.
The DML_FEATURE_LEVEL_6_4 constant was introduced in DML_FEATURE_LEVEL_6_4
. DML_FEATURE_LEVEL_6_4 specifies feature level 6_4.
Availability
This API was introduced in DirectML version 1.1.0
.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Windows Build 22000 |
Minimum supported server | Windows Build 22000 |
Header | directml.h |