D3D12_CROSS_NODE_SHARING_TIER enumeration

Specifies the level of sharing across nodes of an adapter, such as Tier 1 Emulated, Tier 1, or Tier 2.

Syntax

typedef enum D3D12_CROSS_NODE_SHARING_TIER {
  D3D12_CROSS_NODE_SHARING_TIER_NOT_SUPPORTED,
  D3D12_CROSS_NODE_SHARING_TIER_1_EMULATED,
  D3D12_CROSS_NODE_SHARING_TIER_1,
  D3D12_CROSS_NODE_SHARING_TIER_2,
  D3D12_CROSS_NODE_SHARING_TIER_3
} ;

Constants

D3D12_CROSS_NODE_SHARING_TIER_NOT_SUPPORTED If an adapter only has 1 node, then cross-node sharing doesn't apply, so
the CrossNodeSharingTier member of the D3D12_FEATURE_DATA_D3D12_OPTIONS structure
is set to D3D12_CROSS_NODE_SHARING_NOT_SUPPORTED.
D3D12_CROSS_NODE_SHARING_TIER_1_EMULATED Tier 1 Emulated.
Devices that set
the CrossNodeSharingTier member of the D3D12_FEATURE_DATA_D3D12_OPTIONS structure
to D3D12_CROSS_NODE_SHARING_TIER_1_EMULATED have Tier 1 support.
However, drivers stage these copy operations through a driver-internal system memory allocation.
This will cause these copy operations to consume time on the destination GPU as well as the source.
D3D12_CROSS_NODE_SHARING_TIER_1 Tier 1.
Devices that set
the CrossNodeSharingTier member of the D3D12_FEATURE_DATA_D3D12_OPTIONS structure
to D3D12_CROSS_NODE_SHARING_TIER_1 only support the following cross-node copy operations:



Additionally, the cross-node resource must be the destination of the copy operation.
D3D12_CROSS_NODE_SHARING_TIER_2 Tier 2.
Devices that set
the CrossNodeSharingTier member of the D3D12_FEATURE_DATA_D3D12_OPTIONS structure
to D3D12_CROSS_NODE_SHARING_TIER_2 support all operations across nodes, except for the following:



  • Render target views.

  • Depth stencil views.

  • UAV atomic operations.
    Similar to CPU/GPU interop, shaders may perform UAV atomic operations; however, no atomicity across adapters is guaranteed.


Applications can retrieve the node where a resource/heap exists from the D3D12_HEAP_DESC structure.
These values are retrievable for opened resources.
The runtime performs the appropriate re-mapping in case the 2 devices are using different UMD-specified node re-mappings.
D3D12_CROSS_NODE_SHARING_TIER_3

Remarks

This enum is used by the CrossNodeSharingTier member of the D3D12_FEATURE_DATA_D3D12_OPTIONS structure.

Requirements

   
Header d3d12.h

See also

Core Enumerations