ID3D12Debug1::SetEnableSynchronizedCommandQueueValidation メソッド (d3d12sdklayers.h)

デバッグ レイヤーが有効になっている D3D12 デバイスを使用する場合に、依存コマンド キューの同期を有効または無効にします。

構文

void SetEnableSynchronizedCommandQueueValidation(
  BOOL Enable
);

パラメーター

Enable

種類: BOOL

依存コマンド キュー同期を有効にする場合は TRUE、それ以外の場合は FALSE。

戻り値

なし

解説

依存コマンド キュー同期は D3D12 デバッグ レイヤー機能です。この機能を使用すると、デバッグ レイヤーでは、有効にするとリソースの状態をより正確に追跡できます。 依存コマンド キュー同期は、既定で有効になっています。

依存コマンド キュー同期が有効になっている場合、デバッグ レイヤーは、未処理のフェンス 待機 条件がすべて満たされるまで、GPU 作業の実際の送信を保持します。 これにより、複数のコマンド キューが同時作業を実行している可能性がある場合に、CPU タイムラインの GPU 状態 (リソースの状態など) に関して適切な仮定を行うことができます。

依存コマンド キュー同期を無効にすると、 ID3D12CommandQueue::Signal が呼び出されるたびに、デバッグ レイヤーによって追跡されるすべてのリソース状態がクリアされます。 これにより、リソース状態の検証の有用性が大幅に低下します。

依存コマンド キュー同期を無効にすると、複数のコマンド キューを使用する場合に、デバッグ レイヤーのパフォーマンスオーバーヘッドが少なることがあります。 ただし、このオーバーヘッドが問題になる場合を除き、有効のままにすることをお勧めします。 1 つのコマンド キューのみを使用するアプリケーションでは、依存コマンド キュー同期が無効になっているパフォーマンスの変更は表示されません。

要件

   
対象プラットフォーム Windows
ヘッダー d3d12sdklayers.h

関連項目

ID3D12Debug1