次の方法で共有


D3D12_HEAP_PROPERTIES構造体 (d3d12.h)

ヒープのプロパティについて説明します。

構文

typedef struct D3D12_HEAP_PROPERTIES {
  D3D12_HEAP_TYPE         Type;
  D3D12_CPU_PAGE_PROPERTY CPUPageProperty;
  D3D12_MEMORY_POOL       MemoryPoolPreference;
  UINT                    CreationNodeMask;
  UINT                    VisibleNodeMask;
} D3D12_HEAP_PROPERTIES;

メンバーズ

Type

ヒープの種類を指定する D3D12_HEAP_TYPE型指定された値。

CPUPageProperty

ヒープの CPU ページ プロパティを指定する D3D12_CPU_PAGE_PROPERTY型指定された値。

MemoryPoolPreference

ヒープのメモリ プールを指定する D3D12_MEMORY_POOL型指定された値。

CreationNodeMask

マルチアダプター操作の場合、これはリソースを作成する必要があるノードを示します。

この UINT の 1 ビットを設定する必要があります。 マルチアダプター・システムを参照してください。

0 を渡すことは、単一 GPU アダプターの使用を簡略化するために、1 つを渡すことと同じです。

VisibleNodeMask

マルチアダプター操作の場合、これはリソースが表示されるノードのセットを示します。

VisibleNodeMask には、CreationNodeMaskで設定されているのと同じビット セット 必要があります。 VisibleNodeMask では、クロスノード リソースに追加のビットが設定 することもできますが、そうすると、リソース アクセスのパフォーマンスが低下する可能性があるため、必要な場合にのみ行う必要があります。

0 を渡すことは、単一 GPU アダプターの使用を簡略化するために、1 つを渡すことと同じです。

備考

この構造体は、次のように使用されます。

構造体メンバー値の有効な組み合わせ:
  • D3D12_HEAP_TYPE_CUSTOM されている場合、CPUPageProperty と memoryPoolPreference ..._UNKNOWNすることはできません。
  • がD3D12_HEAP_TYPE_CUSTOMされていない場合は、CPUPageProperty と MemoryPoolPreference ..._UNKNOWNする必要があります。
  • D3D12_HEAP_TYPE_CUSTOMと D3D12_MEMORY_POOL_L1 を使用する場合、NUMA アダプターでは、CPUPagePropertyD3D12_CPU_PAGE_PROPERTY_NOT_AVAILABLE する必要があります。 NUMA と UMA アダプターを区別するには、D3D12_FEATURE_ARCHITECTURE と D3D12_FEATURE_DATA_ARCHITECTUREを参照してください。

必要条件

要件 価値
ヘッダー d3d12.h

関連項目

CD3DX12_HEAP_PROPERTIES

コア構造

記述子ヒープ