Direct3D feature levels discussion

The D3D12CheckFeatureSupport tool has been updated to support render pass tier and raytracing tier in Windows 10 version 1809 (build 17763), as well as protected resource session, shader models 6_3 and 6_4 and experimental tiled resources tier 4

Ooops... reporting of Shader models 6_2 and 6_3/6_4 was broken. Please re-download the .zip from the original post.

Impact should be minimal as SM 6_2 was not supported by WARP12 version 1803 (build 17134) even in experimental developer mode, and anyway Microsoft still has not fixed DXCapsViewer to properly report root signature version and maximum shader version.
 
Last edited:
Though Direct3D12 documentation is still outdated, some details about new Direct3D12 API features are available from the Windows Driver Kit documentation:
https://docs.microsoft.com/en-us/wi...what-s-new-in-driver-development#display-1809


What's new in driver development

What's new in Windows 10, version 1809 (latest)

Display

Updates to Display driver development in Windows 10, version 1809 include the following:
  • Raytracing New Direct3D DDI's were created in parallel of Direct3D API's, in order to support hardware-accelerated raytracing... For more info about raytracing, see Announcing Microsoft DirectX Raytracing.

  • SRV-Only Tiled Resource Tier 3 In Windows 10, version 1809, Tiled Resource Tier 3 capabilities can be supported less-orthogonally by GPUs. Direct3D12 now supports sparse volume textures without requiring unordered-access and render-target operations. SRV-Only Tiled Resource Tier 3 is a conceptual tier that fits between Tier 2 and Tier 3. Hardware support is optional, just like orthogonal Tiled Resource Tier 3 support currently is... The runtime will advertise SRV-Only Tiled Resource Tier 3 support to applications for any hardware that already supports orthogonal Tiled Resource Tier 3.

  • Render Pass The Render Pass feature was added to:
    • Allow new APIs to be run on existing drivers.
    • Allow user mode drivers to choose optimal rendering path without heavy CPU penalty.

  • Meta-commands A Meta-command is Direct3D12 object that represents an IHV-accelerated algorithm. It’s an opaque reference to a command generator implemented by the driver. Meta-command updates include Descriptor Table Binding and Texture binding...
    • Enable Compute Algorithms to use Texture Resources (swizzled memory)
    • Enable Graphics Pipeline Algorithms

  • HDR Brightness Compensation A new SDR brightness boost was introduced to raise the reference white of SDR content to the user-desired value, allowing SDR content to be reproduced to a typical 200-240 nits, which is equivalent to what users have expected for SDR displays....

  • HDR Pixel Format Support This kernel mode device driver interface (DDI) change is part of WDDM 2.5 to expose new capabilities to be reported by driver/device, providing information regarding the HDR functionality supported by the driver/device... The HDR capabilities reporting by the driver now includes a Driver/Device level capabilities, which will let OS know if the Driver/Device supports true HDR (i.e. FP16HDR), or only supports a limited form of HDR (i.e. ARGB10HDR)...

  • SDR White Level A kernel mode device driver interface change includes adding new parameters to existing DDIs to let the Graphics drivers know the “SDR white level” value that is being applied by the OS compositor for all the SDR content, for a display which is running in HDR mode...

What's new in Windows 10, version 1803

Display
The following are updates to Display driver development in Windows 10, version 1803:

  • IOMMU hardware-based GPU isolation support - Increases security by restricting GPU access to system memory.

  • Tiled resource tier and LDA atomics - A new cross node sharing tier to add support for atomic shader instructions working across linked adapter (LDA) nodes. This improves ISVs ability to implement multiple GPU rendering techniques like split frame rendering (SFR) and clearly advances the capabilities over what is possible in D3D11.

  • GPU dithering support - Drivers can report the ability to performing dithering on the wire signal for a given timing mode. This allows the OS to explicitly request dithering in scenarios where a higher effective bit depth is needed than is physically available on the monitor link, for example for HDR10 over HDMI 2.0.

  • Direct3D12 and Video - New API and DDI to provide access to the following capabilities:
    • Hardware accelerated video decoding
    • Content Protection
    • Video processing

  • DisplayID - A new DDI, designed to allow the VESA’s DisplayID descriptor to be queried from a display controlled by a graphics adapter and shall support DisplayID v1.3 and DisplayID v2.0...

  • Shared texture improvements - Includes increasing the types of textures that can be shared across processes and D3D devices. This design enables the frame server OS component to support monochrome with minimal memory copying.

What's new in Windows 10, version 1709

Display
The following is a list of new features for Windows Display driver development in Windows 10, version 1709.
  • Display ColorSpace Transform DDIs provide additional control over color space transforms applied in the post-composition display pipeline.

  • The D3D12 Copy Queue Timestamp Queries feature will allow applications to issue timestamp queries on COPY command lists/queues. These timestamps are specified to function identically to timestamps on other engines.

  • Enhanced Video integration into Direct3D12 Runtime through:
    1. Hardware accelerated video decoding
    2. Content protection
    3. Video processing
 
Results from the updated tool:

Pascal
Code:
Direct3D 12 feature checker (October 2018) by DmitryKo (x64)
https://forum.beyond3d.com/posts/1840641/

Windows 10 version 1809 (build 17763.55 rs5_release) x64

ADAPTER 0
"NVIDIA GeForce GTX 1080"
VEN_10DE, DEV_1B80, SUBSYS_1B8010DE, REV_A1
Dedicated video memory : 8079.0 MB (8471445504 bytes)
Total video memory : 40804.3 MB (42786373632 bytes)
Video driver version : 25.21.14.1634
Maximum feature level : D3D_FEATURE_LEVEL_12_1 (0xc100)
DoublePrecisionFloatShaderOps : 1
OutputMergerLogicOp : 1
MinPrecisionSupport : D3D12_SHADER_MIN_PRECISION_SUPPORT_NONE (0) (0b0000'0000)
TiledResourcesTier : D3D12_TILED_RESOURCES_TIER_3 (3)
ResourceBindingTier : D3D12_RESOURCE_BINDING_TIER_3 (3)
PSSpecifiedStencilRefSupported : 0
TypedUAVLoadAdditionalFormats : 1
ROVsSupported : 1
ConservativeRasterizationTier : D3D12_CONSERVATIVE_RASTERIZATION_TIER_2 (2)
StandardSwizzle64KBSupported : 0
CrossNodeSharingTier : D3D12_CROSS_NODE_SHARING_TIER_NOT_SUPPORTED (0)
CrossAdapterRowMajorTextureSupported : 0
VPAndRTArrayIndexFromAnyShaderFeedingRasterizerSupportedWithoutGSEmulation : 1
ResourceHeapTier : D3D12_RESOURCE_HEAP_TIER_1 (1)
MaxGPUVirtualAddressBitsPerResource : 40
MaxGPUVirtualAddressBitsPerProcess : 40
Adapter Node 0:    TileBasedRenderer: 0, UMA: 0, CacheCoherentUMA: 0, IsolatedMMU: 1, HeapSerializationTier: 0, ProtectedResourceSession.Support: 1
HighestShaderModel : D3D12_SHADER_MODEL_6_3 (0x0063)
WaveOps : 1
WaveLaneCountMin : 32
WaveLaneCountMax : 32
TotalLaneCount : 2560
ExpandedComputeResourceStates : 1
Int64ShaderOps : 1
RootSignature.HighestVersion : D3D_ROOT_SIGNATURE_VERSION_1_1 (2)
DepthBoundsTestSupported : 1
ProgrammableSamplePositionsTier : D3D12_PROGRAMMABLE_SAMPLE_POSITIONS_TIER_2 (2)
ShaderCache.SupportFlags : D3D12_SHADER_CACHE_SUPPORT_SINGLE_PSO | LIBRARY (3) (0b0000'0011)
CopyQueueTimestampQueriesSupported : 1
CastingFullyTypedFormatSupported : 1
WriteBufferImmediateSupportFlags : D3D12_COMMAND_LIST_SUPPORT_FLAG_DIRECT | BUNDLE | COMPUTE | COPY | VIDEO_DECODE | VIDEO_PROCESS (63) (0b0011'1111)
ViewInstancingTier : D3D12_VIEW_INSTANCING_TIER_2 (2)
BarycentricsSupported : 0
ExistingHeaps.Supported : 1
MSAA64KBAlignedTextureSupported : 1
SharedResourceCompatibilityTier : D3D12_SHARED_RESOURCE_COMPATIBILITY_TIER_1 (1)
Native16BitShaderOpsSupported : 0
AtomicShaderInstructions : 0
SRVOnlyTiledResourceTier3 : 1
RenderPassesTier : D3D12_RENDER_PASS_TIER_0 (0)
RaytracingTier : D3D12_RAYTRACING_TIER_NOT_SUPPORTED (0)

Pascal + devmode
Code:
Direct3D 12 feature checker (October 2018) by DmitryKo (x64)
https://forum.beyond3d.com/posts/1840641/

Windows 10 version 1809 (build 17763.55 rs5_release) x64
Checking for experimental features SM6 TR4

ADAPTER 0
"NVIDIA GeForce GTX 1080"
VEN_10DE, DEV_1B80, SUBSYS_1B8010DE, REV_A1
Dedicated video memory : 8079.0 MB (8471445504 bytes)
Total video memory : 40804.3 MB (42786373632 bytes)
Video driver version : 25.21.14.1634
Maximum feature level : D3D_FEATURE_LEVEL_12_1 (0xc100)
DoublePrecisionFloatShaderOps : 1
OutputMergerLogicOp : 1
MinPrecisionSupport : D3D12_SHADER_MIN_PRECISION_SUPPORT_NONE (0) (0b0000'0000)
TiledResourcesTier : D3D12_TILED_RESOURCES_TIER_4 (4)
ResourceBindingTier : D3D12_RESOURCE_BINDING_TIER_3 (3)
PSSpecifiedStencilRefSupported : 0
TypedUAVLoadAdditionalFormats : 1
ROVsSupported : 1
ConservativeRasterizationTier : D3D12_CONSERVATIVE_RASTERIZATION_TIER_2 (2)
StandardSwizzle64KBSupported : 0
CrossNodeSharingTier : D3D12_CROSS_NODE_SHARING_TIER_NOT_SUPPORTED (0)
CrossAdapterRowMajorTextureSupported : 0
VPAndRTArrayIndexFromAnyShaderFeedingRasterizerSupportedWithoutGSEmulation : 1
ResourceHeapTier : D3D12_RESOURCE_HEAP_TIER_1 (1)
MaxGPUVirtualAddressBitsPerResource : 40
MaxGPUVirtualAddressBitsPerProcess : 40
Adapter Node 0:    TileBasedRenderer: 0, UMA: 0, CacheCoherentUMA: 0, IsolatedMMU: 1, HeapSerializationTier: 0, ProtectedResourceSession.Support: 1
HighestShaderModel : D3D12_SHADER_MODEL_6_3 (0x0063)
WaveOps : 1
WaveLaneCountMin : 32
WaveLaneCountMax : 32
TotalLaneCount : 2560
ExpandedComputeResourceStates : 1
Int64ShaderOps : 1
RootSignature.HighestVersion : D3D_ROOT_SIGNATURE_VERSION_1_1 (2)
DepthBoundsTestSupported : 1
ProgrammableSamplePositionsTier : D3D12_PROGRAMMABLE_SAMPLE_POSITIONS_TIER_2 (2)
ShaderCache.SupportFlags : D3D12_SHADER_CACHE_SUPPORT_SINGLE_PSO | LIBRARY (3) (0b0000'0011)
CopyQueueTimestampQueriesSupported : 1
CastingFullyTypedFormatSupported : 1
WriteBufferImmediateSupportFlags : D3D12_COMMAND_LIST_SUPPORT_FLAG_DIRECT | BUNDLE | COMPUTE | COPY | VIDEO_DECODE | VIDEO_PROCESS (63) (0b0011'1111)
ViewInstancingTier : D3D12_VIEW_INSTANCING_TIER_2 (2)
BarycentricsSupported : 0
ExistingHeaps.Supported : 1
MSAA64KBAlignedTextureSupported : 1
SharedResourceCompatibilityTier : D3D12_SHARED_RESOURCE_COMPATIBILITY_TIER_1 (1)
Native16BitShaderOpsSupported : 0
AtomicShaderInstructions : 0
SRVOnlyTiledResourceTier3 : 1
RenderPassesTier : D3D12_RENDER_PASS_TIER_0 (0)
RaytracingTier : D3D12_RAYTRACING_TIER_NOT_SUPPORTED (0)
 
Polaris
Code:
Direct3D 12 feature checker (October 2018) by DmitryKo (x64)
https://forum.beyond3d.com/posts/1840641/

Windows 10 version 1809 (build 17763.55 rs5_release) x64

ADAPTER 0
"Radeon(TM) RX 460 Graphics"
VEN_1002, DEV_67EF, SUBSYS_2374148C, REV_CF
Dedicated video memory : 1993.1 MB (2089877504 bytes)
Total video memory : 6066.4 MB (6361051136 bytes)
Video driver version : 25.20.14003.1010
Maximum feature level : D3D_FEATURE_LEVEL_12_0 (0xc000)
DoublePrecisionFloatShaderOps : 1
OutputMergerLogicOp : 1
MinPrecisionSupport : D3D12_SHADER_MIN_PRECISION_SUPPORT_NONE (0) (0b0000'0000)
TiledResourcesTier : D3D12_TILED_RESOURCES_TIER_2 (2)
ResourceBindingTier : D3D12_RESOURCE_BINDING_TIER_3 (3)
PSSpecifiedStencilRefSupported : 1
TypedUAVLoadAdditionalFormats : 1
ROVsSupported : 0
ConservativeRasterizationTier : D3D12_CONSERVATIVE_RASTERIZATION_TIER_NOT_SUPPORTED (0)
StandardSwizzle64KBSupported : 0
CrossNodeSharingTier : D3D12_CROSS_NODE_SHARING_TIER_NOT_SUPPORTED (0)
CrossAdapterRowMajorTextureSupported : 0
VPAndRTArrayIndexFromAnyShaderFeedingRasterizerSupportedWithoutGSEmulation : 1
ResourceHeapTier : D3D12_RESOURCE_HEAP_TIER_2 (2)
MaxGPUVirtualAddressBitsPerResource : 40
MaxGPUVirtualAddressBitsPerProcess : 40
Adapter Node 0:    TileBasedRenderer: 0, UMA: 0, CacheCoherentUMA: 0, IsolatedMMU: 1, HeapSerializationTier: 0, ProtectedResourceSession.Support: 1
HighestShaderModel : D3D12_SHADER_MODEL_6_3 (0x0063)
WaveOps : 1
WaveLaneCountMin : 64
WaveLaneCountMax : 64
TotalLaneCount : 896
ExpandedComputeResourceStates : 1
Int64ShaderOps : 1
RootSignature.HighestVersion : D3D_ROOT_SIGNATURE_VERSION_1_1 (2)
DepthBoundsTestSupported : 1
ProgrammableSamplePositionsTier : D3D12_PROGRAMMABLE_SAMPLE_POSITIONS_TIER_2 (2)
ShaderCache.SupportFlags : D3D12_SHADER_CACHE_SUPPORT_SINGLE_PSO | LIBRARY | AUTOMATIC_INPROC_CACHE | AUTOMATIC_DISK_CACHE (15) (0b0000'1111)
CopyQueueTimestampQueriesSupported : 1
CastingFullyTypedFormatSupported : 1
WriteBufferImmediateSupportFlags : D3D12_COMMAND_LIST_SUPPORT_FLAG_DIRECT | BUNDLE | COMPUTE | COPY (15) (0b0000'1111)
ViewInstancingTier : D3D12_VIEW_INSTANCING_TIER_1 (1)
BarycentricsSupported : 0
ExistingHeaps.Supported : 1
MSAA64KBAlignedTextureSupported : 1
SharedResourceCompatibilityTier : D3D12_SHARED_RESOURCE_COMPATIBILITY_TIER_1 (1)
Native16BitShaderOpsSupported : 0
AtomicShaderInstructions : 0
SRVOnlyTiledResourceTier3 : 0
RenderPassesTier : D3D12_RENDER_PASS_TIER_0 (0)
RaytracingTier : D3D12_RAYTRACING_TIER_NOT_SUPPORTED (0)

Polaris + devmode
Code:
Direct3D 12 feature checker (October 2018) by DmitryKo (x64)
https://forum.beyond3d.com/posts/1840641/

Windows 10 version 1809 (build 17763.55 rs5_release) x64
Checking for experimental features SM6 TR4

ADAPTER 0
"Radeon(TM) RX 460 Graphics"
VEN_1002, DEV_67EF, SUBSYS_2374148C, REV_CF
Dedicated video memory : 1993.1 MB (2089877504 bytes)
Total video memory : 6066.4 MB (6361051136 bytes)
Video driver version : 25.20.14003.1010
Maximum feature level : D3D_FEATURE_LEVEL_12_0 (0xc000)
DoublePrecisionFloatShaderOps : 1
OutputMergerLogicOp : 1
MinPrecisionSupport : D3D12_SHADER_MIN_PRECISION_SUPPORT_NONE (0) (0b0000'0000)
TiledResourcesTier : D3D12_TILED_RESOURCES_TIER_2 (2)
ResourceBindingTier : D3D12_RESOURCE_BINDING_TIER_3 (3)
PSSpecifiedStencilRefSupported : 1
TypedUAVLoadAdditionalFormats : 1
ROVsSupported : 0
ConservativeRasterizationTier : D3D12_CONSERVATIVE_RASTERIZATION_TIER_NOT_SUPPORTED (0)
StandardSwizzle64KBSupported : 0
CrossNodeSharingTier : D3D12_CROSS_NODE_SHARING_TIER_NOT_SUPPORTED (0)
CrossAdapterRowMajorTextureSupported : 0
VPAndRTArrayIndexFromAnyShaderFeedingRasterizerSupportedWithoutGSEmulation : 1
ResourceHeapTier : D3D12_RESOURCE_HEAP_TIER_2 (2)
MaxGPUVirtualAddressBitsPerResource : 40
MaxGPUVirtualAddressBitsPerProcess : 40
Adapter Node 0:    TileBasedRenderer: 0, UMA: 0, CacheCoherentUMA: 0, IsolatedMMU: 1, HeapSerializationTier: 0, ProtectedResourceSession.Support: 1
HighestShaderModel : D3D12_SHADER_MODEL_6_3 (0x0063)
WaveOps : 1
WaveLaneCountMin : 64
WaveLaneCountMax : 64
TotalLaneCount : 896
ExpandedComputeResourceStates : 1
Int64ShaderOps : 1
RootSignature.HighestVersion : D3D_ROOT_SIGNATURE_VERSION_1_1 (2)
DepthBoundsTestSupported : 1
ProgrammableSamplePositionsTier : D3D12_PROGRAMMABLE_SAMPLE_POSITIONS_TIER_2 (2)
ShaderCache.SupportFlags : D3D12_SHADER_CACHE_SUPPORT_SINGLE_PSO | LIBRARY | AUTOMATIC_INPROC_CACHE | AUTOMATIC_DISK_CACHE (15) (0b0000'1111)
CopyQueueTimestampQueriesSupported : 1
CastingFullyTypedFormatSupported : 1
WriteBufferImmediateSupportFlags : D3D12_COMMAND_LIST_SUPPORT_FLAG_DIRECT | BUNDLE | COMPUTE | COPY (15) (0b0000'1111)
ViewInstancingTier : D3D12_VIEW_INSTANCING_TIER_1 (1)
BarycentricsSupported : 0
ExistingHeaps.Supported : 1
MSAA64KBAlignedTextureSupported : 1
SharedResourceCompatibilityTier : D3D12_SHARED_RESOURCE_COMPATIBILITY_TIER_1 (1)
Native16BitShaderOpsSupported : 0
AtomicShaderInstructions : 0
SRVOnlyTiledResourceTier3 : 0
RenderPassesTier : D3D12_RENDER_PASS_TIER_0 (0)
RaytracingTier : D3D12_RAYTRACING_TIER_NOT_SUPPORTED (0)
 
Latest Nvidia driver version is reported as 25.21.14.1634, while AMD driver is 25.20.14003.1010 and Intel driver is 25.20.100.6323.


This article assumes that leading "25.20" refer to WDDM 2.5 and DirectX version "12.1":
Understanding the Intel® Graphics Driver Version Number
https://web.archive.org/web/2020111...s/en/support/articles/000005654/graphics.html
(archived in the Wayback Machine, as the second set of digits denoting DirectX version has been deprecated since Windows 11)

It also mentions prior OS/WDDM versions, and the numbers match display driver versioning rules in Microsoft WDK documentation, which were used for Windows 95/98/Me, 2000/XP, and Vista/7/8/10:
https://docs.microsoft.com/en-us/wi...ion-numbers-for-windows-vista-display-drivers
https://docs.microsoft.com/en-us/wi...s/display/version-numbers-for-display-drivers
https://docs.microsoft.com/en-us/wi...s/display/wddm-2-1-features#driver-versioning


Therefore version numbers for kernel-mode display drivers (aka "Driver Store Version") would be based on the following rules.

First two digits:
Code:
ID    Operation System – WDDM Version
32     Windows 11 Insider Preview "Nickel" (builds 236xx)  – WDDM 3.2
31     Windows 11 22H2 "Nickel" (builds 226xx)  – WDDM 3.1
30     Windows 11 "Cobalt" (builds 21xxx)  – WDDM 3.0
29     Windows 10 Insider Preview "Iron" (builds 20xxx)  – WDDM 2.9
28     Windows 10 Insider Preview "Manganese" (builds 196xx)  – WDDM 2.8
27     Windows 10 May 2020 Update (version 2004 build 19041)  – WDDM 2.7
26     Windows 10 April 2019 Update (version 1903 build 18362)  – WDDM 2.6
25     Windows 10 October 2018 Update (version 1809 build 17763)  – WDDM 2.5
24     Windows 10 April 2018 Update (version 1803 build 17134) – WDDM 2.4
23     Windows 10 Fall Creators Update (version 1709 build 16299) – WDDM 2.3
22     Windows 10 Creators Update (version 1703 build 15063) – WDDM 2.2
21     Windows 10 Anniversary Update (version 1607 build 14393) – WDDM 2.1
20     Windows 10 (version 1507 build 10240) – WDDM 2.0
10     Windows 8.1 – WDDM 1.3
9      Windows 8 – WDDM 1.2
8      Windows 7 – WDDM 1.1
7      Windows Vista – WDDM 1.0
6      Windows XP and Windows 2000
5      Windows 2000
4      Windows 95/98/98SE/Me or Windows NT 4.0

Second two digits:
Code:
ID    DirectX Version / Feature Level
21     12.0 / 12_2
20     12.0 / 12_1
19     12.0 / 12_0
18     11.1 / 11_1
17     11.0 / 11_0
16     10.1 / 10_1
15     10.0 / 10_0
14     9.0 / 9_x
13     8.x
12     7.x
11     6.x
10     5.x
4      3.0
3      2.0
2      1.0
0   Reserved (unused by most recent drivers for Windows 11)

The rest is OEM-specified version/build number.
 
Last edited:
GCN3 (no differences on dev mode)

Code:
Direct3D 12 feature checker (October 2018) by DmitryKo (x64)
https://forum.beyond3d.com/posts/1840641/

Windows 10 version 1809 (build 17763.55 rs5_release) x64

ADAPTER 0
"AMD Radeon (TM) R9 380 Series"
VEN_1002, DEV_6938, SUBSYS_E308174B, REV_F1
Dedicated video memory : 4071.4 MB (4269203456 bytes)
Total video memory : 12227.6 MB (12821614592 bytes)
Video driver version : 25.20.14003.1010
Maximum feature level : D3D_FEATURE_LEVEL_12_0 (0xc000)
DoublePrecisionFloatShaderOps : 1
OutputMergerLogicOp : 1
MinPrecisionSupport : D3D12_SHADER_MIN_PRECISION_SUPPORT_NONE (0) (0b0000'0000)
TiledResourcesTier : D3D12_TILED_RESOURCES_TIER_2 (2)
ResourceBindingTier : D3D12_RESOURCE_BINDING_TIER_3 (3)
PSSpecifiedStencilRefSupported : 1
TypedUAVLoadAdditionalFormats : 1
ROVsSupported : 0
ConservativeRasterizationTier : D3D12_CONSERVATIVE_RASTERIZATION_TIER_NOT_SUPPORTED (0)
StandardSwizzle64KBSupported : 0
CrossNodeSharingTier : D3D12_CROSS_NODE_SHARING_TIER_NOT_SUPPORTED (0)
CrossAdapterRowMajorTextureSupported : 0
VPAndRTArrayIndexFromAnyShaderFeedingRasterizerSupportedWithoutGSEmulation : 1
ResourceHeapTier : D3D12_RESOURCE_HEAP_TIER_2 (2)
MaxGPUVirtualAddressBitsPerResource : 40
MaxGPUVirtualAddressBitsPerProcess : 40
Adapter Node 0:     TileBasedRenderer: 0, UMA: 0, CacheCoherentUMA: 0, IsolatedMMU: 1, HeapSerializationTier: 0, ProtectedResourceSession.Support: 0
HighestShaderModel : D3D12_SHADER_MODEL_6_3 (0x0063)
WaveOps : 1
WaveLaneCountMin : 64
WaveLaneCountMax : 64
TotalLaneCount : 2048
ExpandedComputeResourceStates : 1
Int64ShaderOps : 1
RootSignature.HighestVersion : D3D_ROOT_SIGNATURE_VERSION_1_1 (2)
DepthBoundsTestSupported : 1
ProgrammableSamplePositionsTier : D3D12_PROGRAMMABLE_SAMPLE_POSITIONS_TIER_2 (2)
ShaderCache.SupportFlags : D3D12_SHADER_CACHE_SUPPORT_SINGLE_PSO | LIBRARY | AUTOMATIC_INPROC_CACHE | AUTOMATIC_DISK_CACHE (15) (0b0000'1111)
CopyQueueTimestampQueriesSupported : 1
CastingFullyTypedFormatSupported : 1
WriteBufferImmediateSupportFlags : D3D12_COMMAND_LIST_SUPPORT_FLAG_DIRECT | BUNDLE | COMPUTE | COPY (15) (0b0000'1111)
ViewInstancingTier : D3D12_VIEW_INSTANCING_TIER_1 (1)
BarycentricsSupported : 0
ExistingHeaps.Supported : 1
MSAA64KBAlignedTextureSupported : 1
SharedResourceCompatibilityTier : D3D12_SHARED_RESOURCE_COMPATIBILITY_TIER_1 (1)
Native16BitShaderOpsSupported : 0
AtomicShaderInstructions : 0
SRVOnlyTiledResourceTier3 : 0
RenderPassesTier : D3D12_RENDER_PASS_TIER_0 (0)
RaytracingTier : D3D12_RAYTRACING_TIER_NOT_SUPPORTED (0)
I still do not understand why AMD do not add barycentric semantics.
 
Latest Nvidia driver version is reported as 25.21.14.1634, while AMD driver is 25.20.14003.1010 and Intel driver is 25.20.100.6323. Khmmm...


This support article asserts that the leading "25.20" refer to WDDM 2.5 and DirectX version "12.1":
https://www.intel.com/content/www/us/en/support/articles/000005654/

It also covers prior OS/WDDM versions, and the numbers match versioning rules in Microsoft WDK documentation (though the latter only covers Windows 2000 and Vista):
https://docs.microsoft.com/en-us/wi...ion-numbers-for-windows-vista-display-drivers
https://docs.microsoft.com/en-us/wi...s/display/version-numbers-for-display-drivers

So the full versioning rules for kernel-mode display driver (aka "Driver Store Version") should be as follows:

Code:
ID    Operation System – WDDM Version
25     Windows 10 October 2018 Update – WDDM 2.5
24     Windows 10 April 2018 Update – WDDM 2.4
23     Windows 10 Fall Creators Update – WDDM 2.3
22     Windows 10 Creators Update – WDDM 2.2
21     Windows 10 Anniversary Update – WDDM 2.1
20     Windows 10 – WDDM 2.0
10     Windows 8.1 – WDDM 1.3
9      Windows 8 – WDDM 1.2
8      Windows 7 – WDDM 1.1
7      Windows Vista – WDDM 1.0
6      Windows 2000 and Windows XP
5      Windows 2000 only
4      Windows 95/98/98SE/Me or Windows NT 4.0
Code:
ID    DirectX Version
21     12.2
20     12.1
19     12
18     11.1
17     11.0
16     10.1
15     10.0
14     9.0
13     8.x
12     7.0
11     6.x
10     5.0
3      3.0
2      2.0
1      1.0
That's missing DirectX 11.2 and 11.3 though, and 12.2 isn't at least currently official?
 
Kepler

Code:
Windows 10 version 1809 (build 17763.1 rs5_release) x64
Checking for experimental features SM6 TR4

ADAPTER 0
"NVIDIA GeForce GTX TITAN"
VEN_10DE, DEV_1005, SUBSYS_84511043, REV_A1
Dedicated video memory : 6035.6 MB (6328745984 bytes)
Total video memory : 22388.1 MB (23475599360 bytes)
Video driver version : 25.21.14.1616
Maximum feature level : D3D_FEATURE_LEVEL_11_0 (0xb000)
DoublePrecisionFloatShaderOps : 1
OutputMergerLogicOp : 1
MinPrecisionSupport : D3D12_SHADER_MIN_PRECISION_SUPPORT_NONE (0) (0b0000'0000)
TiledResourcesTier : D3D12_TILED_RESOURCES_TIER_1 (1)
ResourceBindingTier : D3D12_RESOURCE_BINDING_TIER_2 (2)
PSSpecifiedStencilRefSupported : 0
TypedUAVLoadAdditionalFormats : 0
ROVsSupported : 0
ConservativeRasterizationTier : D3D12_CONSERVATIVE_RASTERIZATION_TIER_NOT_SUPPORTED (0)
StandardSwizzle64KBSupported : 0
CrossNodeSharingTier : D3D12_CROSS_NODE_SHARING_TIER_2 (3)
CrossAdapterRowMajorTextureSupported : 0
VPAndRTArrayIndexFromAnyShaderFeedingRasterizerSupportedWithoutGSEmulation : 0
ResourceHeapTier : D3D12_RESOURCE_HEAP_TIER_1 (1)
MaxGPUVirtualAddressBitsPerResource : 40
MaxGPUVirtualAddressBitsPerProcess : 40
Adapter Node 0:  TileBasedRenderer: 0, UMA: 0, CacheCoherentUMA: 0, IsolatedMMU: 1, HeapSerializationTier: 0, ProtectedResourceSession.Support: 0
Adapter Node 1:  TileBasedRenderer: 0, UMA: 0, CacheCoherentUMA: 0, IsolatedMMU: 1, HeapSerializationTier: 0, ProtectedResourceSession.Support: 0
HighestShaderModel : D3D12_SHADER_MODEL_6_3 (0x0063)
WaveOps : 1
WaveLaneCountMin : 32
WaveLaneCountMax : 32
TotalLaneCount : 2688
ExpandedComputeResourceStates : 1
Int64ShaderOps : 1
RootSignature.HighestVersion : D3D_ROOT_SIGNATURE_VERSION_1_1 (2)
DepthBoundsTestSupported : 1
ProgrammableSamplePositionsTier : D3D12_PROGRAMMABLE_SAMPLE_POSITIONS_TIER_NOT_SUPPORTED (0)
ShaderCache.SupportFlags : D3D12_SHADER_CACHE_SUPPORT_SINGLE_PSO | LIBRARY (3) (0b0000'0011)
CopyQueueTimestampQueriesSupported : 1
CastingFullyTypedFormatSupported : 1
WriteBufferImmediateSupportFlags : D3D12_COMMAND_LIST_SUPPORT_FLAG_DIRECT | BUNDLE | COMPUTE | COPY | VIDEO_DECODE | VIDEO_PROCESS (63) (0b0011'1111)
ViewInstancingTier : D3D12_VIEW_INSTANCING_TIER_1 (1)
BarycentricsSupported : 0
ExistingHeaps.Supported : 1
MSAA64KBAlignedTextureSupported : 1
SharedResourceCompatibilityTier : D3D12_SHARED_RESOURCE_COMPATIBILITY_TIER_1 (1)
Native16BitShaderOpsSupported : 0
AtomicShaderInstructions : 0
SRVOnlyTiledResourceTier3 : 0
RenderPassesTier : D3D12_RENDER_PASS_TIER_0 (0)
RaytracingTier : D3D12_RAYTRACING_TIER_NOT_SUPPORTED (0)
 
That's missing DirectX 11.2 and 11.3 though
It doesn't list DX8.1/8.2 or DX9.0b/c as well... I'd guess 11.1 is treated like a major new revision (since it was only available on Windows 8), while 11.2 is a minor update for tiled resources.

Direct3D 11.3/11.4 expose a subset of hardware features from Direct3D 12 and use the same WDDM 2.x DDI.

and 12.2 isn't at least currently official?
12.1 is not official either - and the meaning of "12.1" is a mystery, as it's definitely not related to feature level 12_1 or iD3D12Device1, as was custom in D3D10.1 and D3D11.x era.

For all major GPU vendors, 21.19 driver branches changed to 21.20 at the time of version 1709, but I can't recall any major changes in the kernel-mode display driver or DXGI - the post above contains WDK release notes and what's new list for 1709 is very short.


I would guess that Microsoft re-started giving each new Direct3D release a separate version in order to mitigate issues with OS upgrades - since Windows Update drivers are preferred over vendor-supplied drivers,OS upgrades and Insider Preview builds will often replace the latest vendor-supplied driver with an outdated WU driver release which has the same major/minor Driver Store version...

I still do not understand why AMD do not add barycentric semantics.
Nvidia cards do not support it in D3D12 either, though they do provide proprietary Vulkan/OpenGL extensions (*_fragment_shader_barycentric).
 
Last edited:
Nvidia cards do not support it in D3D12 either, though they do provide proprietary Vulkan/OpenGL extensions (*_fragment_shader_barycentric).
Providing "proprietary" extensions is pretty commonplace for everyone supporting Vulkan. The September driver 411.63 added support for VK_NV_fragment_shader_barycentric along with some other Turing features.

− VK_NVX_raytracing (also available for Pascal GPUs with 8GB or more video memory, and Volta GPUs)
− VK_NV_compute_shader_derivatives
− VK_NV_corner_sampled_image
− VK_NV_fragment_shader_barycentric
− VK_NV_mesh_shader
− VK_NV_representative_fragment_test
− VK_NV_scissor_exclusive
− VK_NV_shader_image_footprint
− VK_NV_shading_rate_image
 
Anyone with a RX Vega running Windows 1809?

Or maybe one of these "Windows 10 on ARM" notebooks with Adreno 540 graphics (HP Envy x2, Asus NovaGo, Lenovo Miix 630)?
 
Last edited:
Hi,
reports of both Titan V and Vega 56 on Windows Insider 18252 (RS6 preview but dxdiag reports WDDM2.5 drivers enabled for both Vega and Titan V)..
report using 416.34 and amd 18.10.1 in experimental mode (checks also for RS6 features!)..
without exp mode only changes D3D12_TILED_RESOURCES_TIER_ from 4 to 3 on both GPUs..
notes both GPUs get :
*D3D12_SHADER_MODEL_6_3
*Native16BitShaderOpsSupported : 1
*SRVOnlyTiledResourceTier3
*no render pass support D3D12_RENDER_PASS_TIER_0
finally:
*Titan V is D3D12_RAYTRACING_TIER_1
(turing also tier 1?)
hardwareluxx has found a (non public)NV driver dated 10 october with DXR enabled on Pascal GPUs like 1080ti.. so it's enabled D3D12_RAYTRACING_TIER_1 also on this cards?
I assume is the 416.33 press driver for 1070 reviews?

@DmitryKo have you added also MSAA64KBAlignedTextureSupported to report, right?
Code:
Direct3D 12 feature checker (October 2018) by DmitryKo (x64)
https://forum.beyond3d.com/posts/1840641/

Windows 10 version 1809 (build 18252.1000 rs_prerelease) x64
Checking for experimental features SM6 TR4

ADAPTER 0
"NVIDIA TITAN V"
VEN_10DE, DEV_1D81, SUBSYS_121810DE, REV_A1
Dedicated video memory : 12079.0 MB (12665749504 bytes)
Total video memory : 28441.4 MB (29823008768 bytes)
Video driver version : 25.21.14.1634
Maximum feature level : D3D_FEATURE_LEVEL_12_1 (0xc100)
DoublePrecisionFloatShaderOps : 1
OutputMergerLogicOp : 1
MinPrecisionSupport : D3D12_SHADER_MIN_PRECISION_SUPPORT_NONE (0) (0b0000'0000)
TiledResourcesTier : D3D12_TILED_RESOURCES_TIER_4 (4)
ResourceBindingTier : D3D12_RESOURCE_BINDING_TIER_3 (3)
PSSpecifiedStencilRefSupported : 0
TypedUAVLoadAdditionalFormats : 1
ROVsSupported : 1
ConservativeRasterizationTier : D3D12_CONSERVATIVE_RASTERIZATION_TIER_3 (3)
StandardSwizzle64KBSupported : 0
CrossNodeSharingTier : D3D12_CROSS_NODE_SHARING_TIER_NOT_SUPPORTED (0)
CrossAdapterRowMajorTextureSupported : 0
VPAndRTArrayIndexFromAnyShaderFeedingRasterizerSupportedWithoutGSEmulation : 1
ResourceHeapTier : D3D12_RESOURCE_HEAP_TIER_1 (1)
MaxGPUVirtualAddressBitsPerResource : 40
MaxGPUVirtualAddressBitsPerProcess : 40
Adapter Node 0:     TileBasedRenderer: 0, UMA: 0, CacheCoherentUMA: 0, IsolatedMMU: 1, HeapSerializationTier: 0, ProtectedResourceSession.Support: 1
HighestShaderModel : D3D12_SHADER_MODEL_6_3 (0x0063)
WaveOps : 1
WaveLaneCountMin : 32
WaveLaneCountMax : 32
TotalLaneCount : 5120
ExpandedComputeResourceStates : 1
Int64ShaderOps : 1
RootSignature.HighestVersion : D3D_ROOT_SIGNATURE_VERSION_1_1 (2)
DepthBoundsTestSupported : 1
ProgrammableSamplePositionsTier : D3D12_PROGRAMMABLE_SAMPLE_POSITIONS_TIER_2 (2)
ShaderCache.SupportFlags : D3D12_SHADER_CACHE_SUPPORT_SINGLE_PSO | LIBRARY (3) (0b0000'0011)
CopyQueueTimestampQueriesSupported : 1
CastingFullyTypedFormatSupported : 1
WriteBufferImmediateSupportFlags : D3D12_COMMAND_LIST_SUPPORT_FLAG_DIRECT | BUNDLE | COMPUTE | COPY | VIDEO_DECODE | VIDEO_PROCESS (63) (0b0011'1111)
ViewInstancingTier : D3D12_VIEW_INSTANCING_TIER_2 (2)
BarycentricsSupported : 0
ExistingHeaps.Supported : 1
MSAA64KBAlignedTextureSupported : 1
SharedResourceCompatibilityTier : D3D12_SHARED_RESOURCE_COMPATIBILITY_TIER_1 (1)
Native16BitShaderOpsSupported : 1
AtomicShaderInstructions : 0
SRVOnlyTiledResourceTier3 : 1
RenderPassesTier : D3D12_RENDER_PASS_TIER_0 (0)
RaytracingTier : D3D12_RAYTRACING_TIER_1 (10)

ADAPTER 1
"Radeon RX Vega"
VEN_1002, DEV_687F, SUBSYS_6B761002, REV_C1
Dedicated video memory : 8120.3 MB (8514785280 bytes)
Total video memory : 24482.8 MB (25672044544 bytes)
Maximum feature level : D3D_FEATURE_LEVEL_12_1 (0xc100)
DoublePrecisionFloatShaderOps : 1
OutputMergerLogicOp : 1
MinPrecisionSupport : D3D12_SHADER_MIN_PRECISION_SUPPORT_16_BIT (2) (0b0000'0010)
TiledResourcesTier : D3D12_TILED_RESOURCES_TIER_4 (4)
ResourceBindingTier : D3D12_RESOURCE_BINDING_TIER_3 (3)
PSSpecifiedStencilRefSupported : 1
TypedUAVLoadAdditionalFormats : 1
ROVsSupported : 1
ConservativeRasterizationTier : D3D12_CONSERVATIVE_RASTERIZATION_TIER_3 (3)
StandardSwizzle64KBSupported : 0
CrossNodeSharingTier : D3D12_CROSS_NODE_SHARING_TIER_NOT_SUPPORTED (0)
CrossAdapterRowMajorTextureSupported : 0
VPAndRTArrayIndexFromAnyShaderFeedingRasterizerSupportedWithoutGSEmulation : 1
ResourceHeapTier : D3D12_RESOURCE_HEAP_TIER_2 (2)
MaxGPUVirtualAddressBitsPerResource : 44
MaxGPUVirtualAddressBitsPerProcess : 44
Adapter Node 0:     TileBasedRenderer: 0, UMA: 0, CacheCoherentUMA: 0, IsolatedMMU: 1, HeapSerializationTier: 0, ProtectedResourceSession.Support: 0
HighestShaderModel : D3D12_SHADER_MODEL_6_3 (0x0063)
WaveOps : 1
WaveLaneCountMin : 64
WaveLaneCountMax : 64
TotalLaneCount : 3584
ExpandedComputeResourceStates : 1
Int64ShaderOps : 1
RootSignature.HighestVersion : D3D_ROOT_SIGNATURE_VERSION_1_1 (2)
DepthBoundsTestSupported : 1
ProgrammableSamplePositionsTier : D3D12_PROGRAMMABLE_SAMPLE_POSITIONS_TIER_2 (2)
ShaderCache.SupportFlags : D3D12_SHADER_CACHE_SUPPORT_SINGLE_PSO | LIBRARY | AUTOMATIC_INPROC_CACHE | AUTOMATIC_DISK_CACHE (15) (0b0000'1111)
CopyQueueTimestampQueriesSupported : 1
CastingFullyTypedFormatSupported : 1
WriteBufferImmediateSupportFlags : D3D12_COMMAND_LIST_SUPPORT_FLAG_DIRECT | BUNDLE | COMPUTE | COPY (15) (0b0000'1111)
ViewInstancingTier : D3D12_VIEW_INSTANCING_TIER_1 (1)
BarycentricsSupported : 0
ExistingHeaps.Supported : 1
MSAA64KBAlignedTextureSupported : 1
SharedResourceCompatibilityTier : D3D12_SHARED_RESOURCE_COMPATIBILITY_TIER_1 (1)
Native16BitShaderOpsSupported : 1
AtomicShaderInstructions : 0
SRVOnlyTiledResourceTier3 : 1
RenderPassesTier : D3D12_RENDER_PASS_TIER_0 (0)
RaytracingTier : D3D12_RAYTRACING_TIER_NOT_SUPPORTED (0)

ADAPTER 2
"Microsoft Basic Render Driver"
VEN_1414, DEV_008C, SUBSYS_00000000, REV_00
Dedicated video memory : 0.0 MB (0 bytes)
Total video memory : 16362.4 MB (17157259264 bytes)
Maximum feature level : D3D_FEATURE_LEVEL_12_1 (0xc100)
DoublePrecisionFloatShaderOps : 1
OutputMergerLogicOp : 1
MinPrecisionSupport : D3D12_SHADER_MIN_PRECISION_SUPPORT_10_BIT | 16_BIT (3) (0b0000'0011)
TiledResourcesTier : D3D12_TILED_RESOURCES_TIER_4 (4)
ResourceBindingTier : D3D12_RESOURCE_BINDING_TIER_3 (3)
PSSpecifiedStencilRefSupported : 1
TypedUAVLoadAdditionalFormats : 1
ROVsSupported : 1
ConservativeRasterizationTier : D3D12_CONSERVATIVE_RASTERIZATION_TIER_3 (3)
StandardSwizzle64KBSupported : 1
CrossNodeSharingTier : D3D12_CROSS_NODE_SHARING_TIER_NOT_SUPPORTED (0)
CrossAdapterRowMajorTextureSupported : 1
VPAndRTArrayIndexFromAnyShaderFeedingRasterizerSupportedWithoutGSEmulation : 1
ResourceHeapTier : D3D12_RESOURCE_HEAP_TIER_2 (2)
MaxGPUVirtualAddressBitsPerResource : 32
MaxGPUVirtualAddressBitsPerProcess : 47
Adapter Node 0:     TileBasedRenderer: 0, UMA: 1, CacheCoherentUMA: 1, IsolatedMMU: 0, HeapSerializationTier: 10, ProtectedResourceSession.Support: 0
HighestShaderModel : D3D12_SHADER_MODEL_6_2 (0x0062)
WaveOps : 1
WaveLaneCountMin : 4
WaveLaneCountMax : 4
TotalLaneCount : 16
ExpandedComputeResourceStates : 1
Int64ShaderOps : 1
RootSignature.HighestVersion : D3D_ROOT_SIGNATURE_VERSION_1_1 (2)
DepthBoundsTestSupported : 1
ProgrammableSamplePositionsTier : D3D12_PROGRAMMABLE_SAMPLE_POSITIONS_TIER_2 (2)
ShaderCache.SupportFlags : D3D12_SHADER_CACHE_SUPPORT_SINGLE_PSO | LIBRARY (3) (0b0000'0011)
CopyQueueTimestampQueriesSupported : 1
CastingFullyTypedFormatSupported : 1
WriteBufferImmediateSupportFlags : D3D12_COMMAND_LIST_SUPPORT_FLAG_DIRECT | BUNDLE | COMPUTE | COPY | VIDEO_DECODE | VIDEO_PROCESS (63) (0b0011'1111)
ViewInstancingTier : D3D12_VIEW_INSTANCING_TIER_1 (1)
BarycentricsSupported : 0
ExistingHeaps.Supported : 1
MSAA64KBAlignedTextureSupported : 1
SharedResourceCompatibilityTier : D3D12_SHARED_RESOURCE_COMPATIBILITY_TIER_1 (1)
Native16BitShaderOpsSupported : 1
AtomicShaderInstructions : 0
SRVOnlyTiledResourceTier3 : 1
RenderPassesTier : D3D12_RENDER_PASS_TIER_1 (1)
RaytracingTier : D3D12_RAYTRACING_TIER_NOT_SUPPORTED (0)

FINISHED running on 2018-10-18 00:29:04
3 display adapters enumerated
 
AMD Radeon RX560, driver 18.10.1 + Intel UHD 630, driver 25.20.100.6326 (Coffee Lake, Core i3 8100)

Seems like everyone shall support SM6_3 with WDDM 2.5 / Windows 1809...

Code:
Direct3D 12 feature checker (October 2018) by DmitryKo (x64)
https://forum.beyond3d.com/posts/1840641/

Windows 10 version 1809 (build 17763.104 rs5_release) x64

ADAPTER 0
"Radeon RX 560 Series"
VEN_1002, DEV_67EF, SUBSYS_2385148C, REV_E5
Dedicated video memory : 4041.1 MB (4237361152 bytes)
Total video memory : 12187.8 MB (12779814912 bytes)
Video driver version : 25.20.14003.1010
Maximum feature level : D3D_FEATURE_LEVEL_12_0 (0xc000)
DoublePrecisionFloatShaderOps : 1
OutputMergerLogicOp : 1
MinPrecisionSupport : D3D12_SHADER_MIN_PRECISION_SUPPORT_NONE (0) (0b0000'0000)
TiledResourcesTier : D3D12_TILED_RESOURCES_TIER_2 (2)
ResourceBindingTier : D3D12_RESOURCE_BINDING_TIER_3 (3)
PSSpecifiedStencilRefSupported : 1
TypedUAVLoadAdditionalFormats : 1
ROVsSupported : 0
ConservativeRasterizationTier : D3D12_CONSERVATIVE_RASTERIZATION_TIER_NOT_SUPPORTED (0)
StandardSwizzle64KBSupported : 0
CrossNodeSharingTier : D3D12_CROSS_NODE_SHARING_TIER_NOT_SUPPORTED (0)
CrossAdapterRowMajorTextureSupported : 0
VPAndRTArrayIndexFromAnyShaderFeedingRasterizerSupportedWithoutGSEmulation : 1
ResourceHeapTier : D3D12_RESOURCE_HEAP_TIER_2 (2)
MaxGPUVirtualAddressBitsPerResource : 40
MaxGPUVirtualAddressBitsPerProcess : 40
Adapter Node 0:     TileBasedRenderer: 0, UMA: 0, CacheCoherentUMA: 0, IsolatedMMU: 1, HeapSerializationTier: 0, ProtectedResourceSession.Support: 1
HighestShaderModel : D3D12_SHADER_MODEL_6_3 (0x0063)
WaveOps : 1
WaveLaneCountMin : 64
WaveLaneCountMax : 64
TotalLaneCount : 896
ExpandedComputeResourceStates : 1
Int64ShaderOps : 1
RootSignature.HighestVersion : D3D_ROOT_SIGNATURE_VERSION_1_1 (2)
DepthBoundsTestSupported : 1
ProgrammableSamplePositionsTier : D3D12_PROGRAMMABLE_SAMPLE_POSITIONS_TIER_2 (2)
ShaderCache.SupportFlags : D3D12_SHADER_CACHE_SUPPORT_SINGLE_PSO | LIBRARY | AUTOMATIC_INPROC_CACHE | AUTOMATIC_DISK_CACHE (15) (0b0000'1111)
CopyQueueTimestampQueriesSupported : 1
CastingFullyTypedFormatSupported : 1
WriteBufferImmediateSupportFlags : D3D12_COMMAND_LIST_SUPPORT_FLAG_DIRECT | BUNDLE | COMPUTE | COPY (15) (0b0000'1111)
ViewInstancingTier : D3D12_VIEW_INSTANCING_TIER_1 (1)
BarycentricsSupported : 0
ExistingHeaps.Supported : 1
MSAA64KBAlignedTextureSupported : 1
SharedResourceCompatibilityTier : D3D12_SHARED_RESOURCE_COMPATIBILITY_TIER_1 (1)
Native16BitShaderOpsSupported : 0
AtomicShaderInstructions : 0
SRVOnlyTiledResourceTier3 : 0
RenderPassesTier : D3D12_RENDER_PASS_TIER_0 (0)
RaytracingTier : D3D12_RAYTRACING_TIER_NOT_SUPPORTED (0)

ADAPTER 1
"Intel(R) UHD Graphics 630"
VEN_8086, DEV_3E91, SUBSYS_7B611462, REV_00
Dedicated video memory : 128.0 MB (134217728 bytes)
Total video memory : 8274.7 MB (8676671488 bytes)
Maximum feature level : D3D_FEATURE_LEVEL_12_1 (0xc100)
DoublePrecisionFloatShaderOps : 1
OutputMergerLogicOp : 1
MinPrecisionSupport : D3D12_SHADER_MIN_PRECISION_SUPPORT_16_BIT (2) (0b0000'0010)
TiledResourcesTier : D3D12_TILED_RESOURCES_TIER_3 (3)
ResourceBindingTier : D3D12_RESOURCE_BINDING_TIER_3 (3)
PSSpecifiedStencilRefSupported : 1
TypedUAVLoadAdditionalFormats : 1
ROVsSupported : 1
ConservativeRasterizationTier : D3D12_CONSERVATIVE_RASTERIZATION_TIER_3 (3)
StandardSwizzle64KBSupported : 0
CrossNodeSharingTier : D3D12_CROSS_NODE_SHARING_TIER_NOT_SUPPORTED (0)
CrossAdapterRowMajorTextureSupported : 1
VPAndRTArrayIndexFromAnyShaderFeedingRasterizerSupportedWithoutGSEmulation : 1
ResourceHeapTier : D3D12_RESOURCE_HEAP_TIER_2 (2)
MaxGPUVirtualAddressBitsPerResource : 38
MaxGPUVirtualAddressBitsPerProcess : 48
Adapter Node 0:     TileBasedRenderer: 0, UMA: 1, CacheCoherentUMA: 1, IsolatedMMU: 1, HeapSerializationTier: 0, ProtectedResourceSession.Support: 1
HighestShaderModel : D3D12_SHADER_MODEL_6_3 (0x0063)
WaveOps : 1
WaveLaneCountMin : 8
WaveLaneCountMax : 32
TotalLaneCount : 736
ExpandedComputeResourceStates : 1
Int64ShaderOps : 1
RootSignature.HighestVersion : D3D_ROOT_SIGNATURE_VERSION_1_1 (2)
DepthBoundsTestSupported : 0
ProgrammableSamplePositionsTier : D3D12_PROGRAMMABLE_SAMPLE_POSITIONS_TIER_1 (1)
ShaderCache.SupportFlags : D3D12_SHADER_CACHE_SUPPORT_SINGLE_PSO | LIBRARY | AUTOMATIC_INPROC_CACHE | AUTOMATIC_DISK_CACHE (15) (0b0000'1111)
CopyQueueTimestampQueriesSupported : 1
CastingFullyTypedFormatSupported : 1
WriteBufferImmediateSupportFlags : D3D12_COMMAND_LIST_SUPPORT_FLAG_DIRECT | BUNDLE | COMPUTE | COPY (15) (0b0000'1111)
ViewInstancingTier : D3D12_VIEW_INSTANCING_TIER_1 (1)
BarycentricsSupported : 0
ExistingHeaps.Supported : 1
MSAA64KBAlignedTextureSupported : 1
SharedResourceCompatibilityTier : D3D12_SHARED_RESOURCE_COMPATIBILITY_TIER_1 (1)
Native16BitShaderOpsSupported : 1
AtomicShaderInstructions : 0
SRVOnlyTiledResourceTier3 : 1
RenderPassesTier : D3D12_RENDER_PASS_TIER_0 (0)
RaytracingTier : D3D12_RAYTRACING_TIER_NOT_SUPPORTED (0)
 
Nvidia Geforce GTX 750 Ti

Code:
Direct3D 12 feature checker (October 2018) by DmitryKo (x64)
https://forum.beyond3d.com/posts/1840641/

Windows 10 version 1809 (build 17763.55 rs5_release) x64

ADAPTER 0
"NVIDIA GeForce GTX 750 Ti"
VEN_10DE, DEV_1380, SUBSYS_362D1458, REV_A2
Dedicated video memory : 2007.6 MB (2105147392 bytes)
Total video memory : 10174.4 MB (10668652544 bytes)
Video driver version : 25.21.14.1616
Maximum feature level : D3D_FEATURE_LEVEL_11_0 (0xb000)
DoublePrecisionFloatShaderOps : 1
OutputMergerLogicOp : 1
MinPrecisionSupport : D3D12_SHADER_MIN_PRECISION_SUPPORT_NONE (0) (0b0000'0000)
TiledResourcesTier : D3D12_TILED_RESOURCES_TIER_1 (1)
ResourceBindingTier : D3D12_RESOURCE_BINDING_TIER_3 (3)
PSSpecifiedStencilRefSupported : 0
TypedUAVLoadAdditionalFormats : 1
ROVsSupported : 0
ConservativeRasterizationTier : D3D12_CONSERVATIVE_RASTERIZATION_TIER_NOT_SUPPORTED (0)
StandardSwizzle64KBSupported : 0
CrossNodeSharingTier : D3D12_CROSS_NODE_SHARING_TIER_NOT_SUPPORTED (0)
CrossAdapterRowMajorTextureSupported : 0
VPAndRTArrayIndexFromAnyShaderFeedingRasterizerSupportedWithoutGSEmulation : 0
ResourceHeapTier : D3D12_RESOURCE_HEAP_TIER_1 (1)
MaxGPUVirtualAddressBitsPerResource : 40
MaxGPUVirtualAddressBitsPerProcess : 40
Adapter Node 0:     TileBasedRenderer: 0, UMA: 0, CacheCoherentUMA: 0, IsolatedMMU: 1, HeapSerializationTier: 0, ProtectedResourceSession.Support: 0
HighestShaderModel : D3D12_SHADER_MODEL_6_3 (0x0063)
WaveOps : 1
WaveLaneCountMin : 32
WaveLaneCountMax : 32
TotalLaneCount : 640
ExpandedComputeResourceStates : 1
Int64ShaderOps : 1
RootSignature.HighestVersion : D3D_ROOT_SIGNATURE_VERSION_1_1 (2)
DepthBoundsTestSupported : 1
ProgrammableSamplePositionsTier : D3D12_PROGRAMMABLE_SAMPLE_POSITIONS_TIER_NOT_SUPPORTED (0)
ShaderCache.SupportFlags : D3D12_SHADER_CACHE_SUPPORT_SINGLE_PSO | LIBRARY (3) (0b0000'0011)
CopyQueueTimestampQueriesSupported : 1
CastingFullyTypedFormatSupported : 1
WriteBufferImmediateSupportFlags : D3D12_COMMAND_LIST_SUPPORT_FLAG_DIRECT | BUNDLE | COMPUTE | COPY | VIDEO_DECODE | VIDEO_PROCESS (63) (0b0011'1111)
ViewInstancingTier : D3D12_VIEW_INSTANCING_TIER_1 (1)
BarycentricsSupported : 0
ExistingHeaps.Supported : 1
MSAA64KBAlignedTextureSupported : 1
SharedResourceCompatibilityTier : D3D12_SHARED_RESOURCE_COMPATIBILITY_TIER_1 (1)
Native16BitShaderOpsSupported : 0
AtomicShaderInstructions : 0
SRVOnlyTiledResourceTier3 : 0
RenderPassesTier : D3D12_RENDER_PASS_TIER_0 (0)
RaytracingTier : D3D12_RAYTRACING_TIER_NOT_SUPPORTED (0)

ADAPTER 1
"Microsoft Basic Render Driver"
VEN_1414, DEV_008C, SUBSYS_00000000, REV_00
Dedicated video memory : 0.0 MB (0 bytes)
Total video memory : 8166.8 MB (8563505152 bytes)
Maximum feature level : D3D_FEATURE_LEVEL_12_1 (0xc100)
DoublePrecisionFloatShaderOps : 1
OutputMergerLogicOp : 1
MinPrecisionSupport : D3D12_SHADER_MIN_PRECISION_SUPPORT_10_BIT | 16_BIT (3) (0b0000'0011)
TiledResourcesTier : D3D12_TILED_RESOURCES_TIER_3 (3)
ResourceBindingTier : D3D12_RESOURCE_BINDING_TIER_3 (3)
PSSpecifiedStencilRefSupported : 1
TypedUAVLoadAdditionalFormats : 1
ROVsSupported : 1
ConservativeRasterizationTier : D3D12_CONSERVATIVE_RASTERIZATION_TIER_3 (3)
StandardSwizzle64KBSupported : 1
CrossNodeSharingTier : D3D12_CROSS_NODE_SHARING_TIER_NOT_SUPPORTED (0)
CrossAdapterRowMajorTextureSupported : 1
VPAndRTArrayIndexFromAnyShaderFeedingRasterizerSupportedWithoutGSEmulation : 1
ResourceHeapTier : D3D12_RESOURCE_HEAP_TIER_2 (2)
MaxGPUVirtualAddressBitsPerResource : 32
MaxGPUVirtualAddressBitsPerProcess : 47
Adapter Node 0:     TileBasedRenderer: 0, UMA: 1, CacheCoherentUMA: 1, IsolatedMMU: 0, HeapSerializationTier: 10, ProtectedResourceSession.Support: 0
HighestShaderModel : D3D12_SHADER_MODEL_6_2 (0x0062)
WaveOps : 1
WaveLaneCountMin : 4
WaveLaneCountMax : 4
TotalLaneCount : 16
ExpandedComputeResourceStates : 1
Int64ShaderOps : 1
RootSignature.HighestVersion : D3D_ROOT_SIGNATURE_VERSION_1_1 (2)
DepthBoundsTestSupported : 1
ProgrammableSamplePositionsTier : D3D12_PROGRAMMABLE_SAMPLE_POSITIONS_TIER_2 (2)
ShaderCache.SupportFlags : D3D12_SHADER_CACHE_SUPPORT_SINGLE_PSO | LIBRARY (3) (0b0000'0011)
CopyQueueTimestampQueriesSupported : 1
CastingFullyTypedFormatSupported : 1
WriteBufferImmediateSupportFlags : D3D12_COMMAND_LIST_SUPPORT_FLAG_DIRECT | BUNDLE | COMPUTE | COPY | VIDEO_DECODE | VIDEO_PROCESS (63) (0b0011'1111)
ViewInstancingTier : D3D12_VIEW_INSTANCING_TIER_1 (1)
BarycentricsSupported : 0
ExistingHeaps.Supported : 1
MSAA64KBAlignedTextureSupported : 1
SharedResourceCompatibilityTier : D3D12_SHARED_RESOURCE_COMPATIBILITY_TIER_1 (1)
Native16BitShaderOpsSupported : 1
AtomicShaderInstructions : 0
SRVOnlyTiledResourceTier3 : 1
RenderPassesTier : D3D12_RENDER_PASS_TIER_1 (1)
RaytracingTier : D3D12_RAYTRACING_TIER_NOT_SUPPORTED (0)
 
The D3D12CheckFeatureSupport tool has been updated to query feature options 6, shader model 6_5, metacommands, and experimental compute-only devices (feature level 1_0_CORE) available in Windows 19H1 Preview and SDK 18298.

The new features as reported by Microsoft Basic Render Driver (WARP12):
Code:
AdditionalShadingRatesSupported : 0
PerPrimitiveShadingRateSupportedWithViewportIndexing : 0
VariableShadingRateTier : D3D12_VARIABLE_SHADING_RATE_TIER_NOT_SUPPORTED (0)
ShadingRateImageTileSize : 0
BackgroundProcessingSupported : 0
Metacommands enumerated : 2
Metacommands : Identity, ClearUAVFloat

Radeon R9 290X and Intel UHD630 report a different set of metacommands:
Code:
Metacommands enumerated : 4
Metacommands : Conv (Convolution), Convolution, GEMM (General matrix multiply), GEMM

Also, there is a new /all option to engage all feature queries and use maximum parameter values - will result in runtime errors on older versions of Windows which lack the latest feature options, shader models, metacommands, and experimental features.

Happy New year to everyone!
 
Last edited:
Back
Top