ハードウェアの階層

階層 1 から階層 3 のハードウェア レベルでは、パイプラインで使用可能なリソースが増えます。

ハードウェア依存の制限

パイプラインで使用可能なリソース 階層 1 階層 2 階層 3
機能レベル 11.0+ 11.0+ 11.1+
レンダリングに使用される定数バッファー ビュー (CBV)、シェーダー リソース ビュー (SRV)、または順序指定されていないアクセス ビュー (UAV) ヒープ内の記述子の最大数 1,000,000 1,000,000 1,000,000+
シェーダー ステージごとのすべての記述子テーブル内の定数バッファー ビューの最大数 14 14 完全なヒープ
シェーダー ステージごとのすべての記述子テーブル内のシェーダー リソース ビューの最大数 128 完全なヒープ 完全なヒープ
すべてのステージにわたるすべての記述子テーブル内の順序指定されていないアクセス ビューの最大数 機能レベル 11.1+ に対して 64
機能レベル 11 に対して 8
64 完全なヒープ
シェーダー ステージごとのすべての記述子テーブル内のサンプラーの最大数 16 2048 2048

太字エントリでは、以前の階層の大幅な改善が強調表示されます。

すべてのヒープに適用される階層 1 ハードウェアと、CBV および UAV ヒープに適用される階層 2 ハードウェアには追加の制限があります。つまり、ルート署名で記述子テーブルによってカバーされるすべての記述子ヒープ エントリが、シェーダー (恐らく分岐によって) が記述子を必要としなくても、シェーダーが実行されるまでに記述子に設定される必要があります。 階層 3 のハードウェアには、このような制限はありません。 この制限の軽減策の 1 つとして、Null 記述子をしっかりと使用します。

一定の制限

シェーダーの表示できる記述子ヒープ内のサンプラーの最大数は 2048 です。

ライブ ルート署名全体の一意の静的サンプラーの最大数は 2032 です (独自のサンプラーが必要なドライバーでは 16 が残ります)。

記述子ヒープ

ハードウェアの機能レベル