다음을 통해 공유


ID3D12Debug1::SetEnableSynchronizedCommandQueueValidation 메서드(d3d12sdklayers.h)

디버그 계층이 활성화된 D3D12 디바이스를 사용할 때 종속 명령 큐 동기화를 사용하거나 사용하지 않도록 설정합니다.

구문

void SetEnableSynchronizedCommandQueueValidation(
  BOOL Enable
);

매개 변수

Enable

형식: BOOL

TRUE이면 종속 명령 큐 동기화를 사용하도록 설정하고, 그렇지 않으면 FALSE입니다.

반환 값

없음

설명

종속 명령 큐 동기화는 디버그 계층이 활성화될 때 리소스 상태를 보다 정확하게 추적하는 기능을 제공하는 D3D12 디버그 계층 기능입니다. 종속 명령 큐 동기화는 기본적으로 사용하도록 설정됩니다.

종속 명령 큐 동기화를 사용하도록 설정하면 디버그 계층은 모든 미해결 펜스 대기 조건이 충족될 때까지 GPU 작업의 실제 제출을 보류합니다. 이렇게 하면 여러 명령 큐가 잠재적으로 동시 작업을 수행하는 경우 디버그 계층에서 CPU 타임라인 GPU 상태(예: 리소스 상태)에 대해 합리적인 가정을 할 수 있습니다.

종속 명령 큐 동기화를 사용하지 않도록 설정하면 ID3D12CommandQueue::Signal 이 호출될 때마다 디버그 계층에서 추적하는 모든 리소스 상태가 지워집니다. 이로 인해 리소스 상태 유효성 검사가 훨씬 덜 유용합니다.

종속 명령 큐 동기화를 사용하지 않도록 설정하면 여러 명령 큐를 사용할 때 일부 디버그 계층 성능 오버헤드가 감소할 수 있습니다. 그러나 이 오버헤드가 문제가 되지 않는 한 사용하도록 설정하는 것이 좋습니다. 단일 명령 큐만 사용하는 애플리케이션에는 종속 명령 큐 동기화가 사용하지 않도록 설정된 성능 변경 내용이 표시되지 않습니다.

요구 사항

   
대상 플랫폼 Windows
헤더 d3d12sdklayers.h

추가 정보

ID3D12Debug1