バンクへのメモリ領域セグメントの分割
ディスプレイ ミニポート ドライバーは、セグメントをバンクメモリ (バンク) に分割することによって、 線形メモリ空間セグメント 内のビデオ リソースの割り当てに最適な配置について、ビデオ メモリ マネージャーにきめ細かいヒントを提供できます。 ドライバーが線形メモリ空間セグメントをバンクに分割する場合、ドライバーは、セグメントの DXGK_SEGMENTDESCRIPTOR 構造体の Flags メンバーで UseBanking ビット フィールド フラグを設定する必要があります。 ドライバーは、ビデオ メモリ マネージャーがドライバーの DxgkDdiCreateAllocation 関数を呼び出すときに、割り当て用の DXGK_ALLOCATIONINFO 構造体の HintedBank メンバーに格納されているメモリに関するヒントを返します。 詳細については、「割り当ての作成時にセグメントを指定する」を参照してください。
割り当てはセグメント内に完全に含まれている必要があります。割り当ては、セグメント内のバンクの境界を越えることができます。
バンクを使用する場合、ドライバーは、セグメントのアドレス空間全体をバンクでカバーする必要があります。 最初のバンクは常にセグメント内のオフセットゼロから始まり、最後のバンクは常にセグメントの末尾で終了します。 バンクは連続しており、それらの間に空き領域がありません。