D3D12_HEAP_TYPE列挙 (d3d12.h)
ヒープの種類を指定します。 常駐している場合、ヒープは特定の CPU キャッシュ プロパティを持つ特定の物理メモリ プールに存在します。
構文
typedef enum D3D12_HEAP_TYPE {
D3D12_HEAP_TYPE_DEFAULT = 1,
D3D12_HEAP_TYPE_UPLOAD = 2,
D3D12_HEAP_TYPE_READBACK = 3,
D3D12_HEAP_TYPE_CUSTOM = 4,
D3D12_HEAP_TYPE_GPU_UPLOAD
} ;
定数
D3D12_HEAP_TYPE_DEFAULT 値: 1 既定のヒープを指定します。 このヒープの種類では GPU の帯域幅が最も多くなりますが、CPU アクセスを提供することはできません。 GPU はこのプールからメモリの読み取りと書き込みを行うことができます。また、リソース遷移バリアが変更される可能性があります。 ヒープとリソースの大部分はここに配置されることが想定されており、通常はアップロード ヒープ内のリソースを通じて設定されます。 |
D3D12_HEAP_TYPE_UPLOAD 値: 2 アップロードに使用するヒープを指定します。 このヒープの種類には、GPU へのアップロード用に最適化された CPU アクセスがありますが、GPU の最大帯域幅は発生しません。 このヒープの種類は、CPU-write-once、GPU-read-once データに最適です。ただし、GPU-read-once は必要以上に厳密です。 GPU-read-once-or-from-cache は、データに許容されるユース ケースです。しかし、GPUキャッシュの設計とサイズが異なるため、このような使用を判断するのは難しいです。 不明な場合は、GPU 読み取り 1 回の定義に注意するか、データを_DEFAULT ヒープにコピーすることと、_UPLOAD ヒープからデータを読み取る場合の違いをプロファイリングします。 このヒープ内のリソースは 、D3D12_RESOURCE_STATEを使用して作成する必要があります_GENERIC_READこのヒープから離れて変更することはできません。 このようなヒープの CPU アドレスは、通常、CPU 読み取りでは効率的ではありません。 _UPLOAD ヒープの一般的な使用法を次に示します。
次の例は、_UPLOAD ヒープに適していない可能性があります。
|
D3D12_HEAP_TYPE_READBACK 値: 3 読み戻しに使用するヒープを指定します。 このヒープの種類には、GPU からのデータの読み取り用に最適化された CPU アクセスがありますが、GPU の最大帯域幅は発生しません。 このヒープの種類は、GPU 書き込み 1 回の CPU 読み取り可能なデータに最適です。 CPU キャッシュの動作はライトバックであり、複数のサブキャッシュライン CPU 読み取りに役立ちます。 このヒープ内のリソースは 、D3D12_RESOURCE_STATE_COPY_DEST を使用して作成する必要があります。このヒープから離れて変更することはできません。 |
D3D12_HEAP_TYPE_CUSTOM 値: 4 カスタム ヒープを指定します。 アプリケーションでは、メモリ プールと CPU キャッシュのプロパティを直接指定できます。これは、UMA の最適化、マルチエンジン、マルチアダプター、その他の特殊なケースに役立ちます。 これを行うには、アプリケーションが適切な選択を行うためにアダプター アーキテクチャを理解することが必要です。 詳細については、次を参照してください。 D3D12_FEATURE_ARCHITECTURE、 D3D12_FEATURE_DATA_ARCHITECTURE、および GetCustomHeapProperties。 |
注釈
この列挙型は、次の API 項目で使用されます。
ヒープの種類は、抽象化されたヒープの種類とカスタム ヒープの種類の 2 つのカテゴリに分類されます。抽象化されたヒープの種類を次に示します。
- D3D12_HEAP_TYPE_DEFAULT
- D3D12_HEAP_TYPE_UPLOAD
- D3D12_HEAP_TYPE_READBACK
- D3D12_HEAP_TYPE_CUSTOM
(バッファーとは異なり) テクスチャをヒープ型 UPLOAD または READBACK にすることはできません。
要件
要件 | 値 |
---|---|
Header | d3d12.h |
こちらもご覧ください
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示