다음을 통해 공유


D3DKMTConnectDoorbell 함수(d3dkmthk.h)

중요하다

일부 정보는 상용 출시되기 전에 실질적으로 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보와 관련하여 명시적이거나 묵시적인 보증을 하지 않습니다.

D3DKMTConnectDoorbell 이전에 만든 초인종 하드웨어 큐에 연결하거나 다시 연결합니다.

통사론

NTSTATUS D3DKMTConnectDoorbell(
  D3DKMT_CONNECT_DOORBELL *unnamedParam1
);

매개 변수

unnamedParam1

[in] 연결할 초인종을 설명하는 *D3DKMT_CONNECT_DOORBELL* 구조체에 대한 포인터입니다.

반환 값

D3DKMTConnectDoorbell OS가 초인종을 하드웨어 큐에 성공적으로 연결하고 UMD가 작업 제출에 이 초인종을 사용할 수 있으면 STATUS_SUCCESS 반환합니다. 일반적으로 이 호출은 실패하지 않아야 합니다. 그러나 오류 코드는 복구할 수 없는 시나리오의 손실 또는 중지 종류의 GPU에서 발생합니다.

발언

UMD가 하드웨어 큐에 새 작업을 제출하고 초인종을 울릴 때마다 DoorbellStatusCPUVirtualAddress 읽어 초인종 링이 성공했는지 확인해야 합니다. 실패할 경우 UMD는 D3DKMTConnectDoorbell 호출하여 초인종을 다시 연결한 다음 제출을 다시 시도해야 합니다.

몇 가지 이유로 초인종의 연결을 끊을 수 있습니다.

  • 초인종을 만들면 OS는 "연결이 끊긴" 상태로 초기화하고 UMD가 처음으로 D3DKMTConnectDoorbell 호출할 때만 연결합니다.
  • 초인종은 전용 초인종 모델을 지원하는 하드웨어에서 "희생"되었습니다. 즉, 이 하드웨어 큐의 실제 초인종이 다른 하드웨어 큐에 할당되었습니다. 이 재할당은 실제 초인종보다 GPU에 만들어진 하드웨어 큐가 더 많기 때문일 수 있습니다.
  • 초인종은 하드웨어 큐를 일시 중단하거나 GPU 전원을 켜는 과정의 일부로 연결이 끊어졌습니다.

UMD가 D3DKMTConnectDoorbell 호출하여 하드웨어 큐에 할당된 초인종을 연결하면 OS는 KMD에 대한 해당 DxgkDdiConnectDoorbell 호출하므로 KMD는 물리적 초인종을 찾고, 이 하드웨어 큐에 할당하고, 하드웨어 큐, 초인종, GPU 스케줄러 간에 필요한 연결을 설정할 수 있습니다.

자세한 내용은 사용자 모드 작업 제출참조하세요.

요구 사항

요구
지원되는 최소 클라이언트 Windows 11 버전 24H2(WDDM 3.2)
헤더 d3dkmthk.h

참고 항목

D3DKMT_CONNECT_DOORBELL

D3DKMTCreateDoorbell

DxgkDdiConnectDoorbell