DXGK_INTERRUPT_TYPE 열거형(d3dkmddi.h)

DXGK_INTERRUPT_TYPE 열거형은 디스플레이 미니포트 드라이버가 GPU(그래픽 처리 장치) 스케줄러에 알려 주는 인터럽트 유형을 나타냅니다.

Syntax

typedef enum _DXGK_INTERRUPT_TYPE {
  DXGK_INTERRUPT_DMA_COMPLETED,
  DXGK_INTERRUPT_DMA_PREEMPTED,
  DXGK_INTERRUPT_CRTC_VSYNC,
  DXGK_INTERRUPT_DMA_FAULTED,
  DXGK_INTERRUPT_DISPLAYONLY_VSYNC,
  DXGK_INTERRUPT_DISPLAYONLY_PRESENT_PROGRESS,
  DXGK_INTERRUPT_CRTC_VSYNC_WITH_MULTIPLANE_OVERLAY,
  DXGK_INTERRUPT_MICACAST_CHUNK_PROCESSING_COMPLETE,
  DXGK_INTERRUPT_DMA_PAGE_FAULTED,
  DXGK_INTERRUPT_CRTC_VSYNC_WITH_MULTIPLANE_OVERLAY2,
  DXGK_INTERRUPT_MONITORED_FENCE_SIGNALED,
  DXGK_INTERRUPT_HWQUEUE_PAGE_FAULTED,
  DXGK_INTERRUPT_HWCONTEXTLIST_SWITCH_COMPLETED,
  DXGK_INTERRUPT_PERIODIC_MONITORED_FENCE_SIGNALED,
  DXGK_INTERRUPT_SCHEDULING_LOG_INTERRUPT,
  DXGK_INTERRUPT_GPU_ENGINE_TIMEOUT,
  DXGK_INTERRUPT_SUSPEND_CONTEXT_COMPLETED,
  DXGK_INTERRUPT_CRTC_VSYNC_WITH_MULTIPLANE_OVERLAY3,
  DXGK_INTERRUPT_NATIVE_FENCE_SIGNALED,
  DXGK_INTERRUPT_GPU_ENGINE_STATE_CHANGE
} DXGK_INTERRUPT_TYPE;

상수

 
DXGK_INTERRUPT_DMA_COMPLETED
펜스 식별자를 사용하여 DMA(직접 메모리 액세스) 버퍼를 완료합니다. 드라이버는 DxgkCbNotifyInterrupt 함수에 대한 호출에서 DXGKARGCB_NOTIFY_INTERRUPT_DATA 구조체에 포함된 공용 구조체의 DmaCompleted 구조체의 SubmissionFenceId 멤버에 DMA 버퍼 펜스 식별자를 제공해야 합니다. 이 DMA 버퍼 펜스 식별자는 최신 완성된 DMA 버퍼에 대한 드라이버의 DxgkDdiSubmitCommand 함수를 호출하는 동안 할당되었습니다.
DXGK_INTERRUPT_DMA_PREEMPTED
선점 요청이 완료되었습니다. 드라이버는 DxgkCbNotifyInterrupt 함수 호출에서 DXGKARGCB_NOTIFY_INTERRUPT_DATA 구조체에 포함된 공용 구조체의 DmaPreempted 구조체의 LastCompletedFenceId 멤버에서 하드웨어가 완료(선점되지 않음) PreemptionFenceId 멤버의 선점 펜스 식별자와 최신 펜스 식별자를 제공해야 합니다.

GPU 스케줄러는 그래픽 하드웨어가 선점 요청과 최신 펜스 식별자를 사용한 제출 사이의 모든 명령을 선점했다고 결정합니다.
DXGK_INTERRUPT_CRTC_VSYNC
검색이 완료되었습니다. 드라이버는 DxgkCbNotifyInterrupt 함수에 대한 호출에서 DXGKARGCB_NOTIFY_INTERRUPT_DATA 구조체에 포함된 공용 구조체의 CrtcVsync 구조체에 정보를 제공해야 합니다.

디스플레이 미니포트 드라이버는 비디오 하드웨어가 수직 회귀 기간에 들어가고 보류 중인 대칭 이동 주소가 DAC에 래치되어 스캔된 후 이 인터럽트 유형으로 알 수 있습니다. 운영 체제가 드라이버의 DxgkDdiControlInterrupt 함수를 호출하여 인터럽트 유형을 사용하지 않도록 설정한 후에는 디스플레이 미니포트 드라이버가 이 인터럽트를 보고할 필요가 없습니다. 그러나 운영 체제가 드라이버의 DxgkDdiControlInterrupt 함수를 다시 호출하여 인터럽트 유형을 사용하도록 설정한 후 드라이버가 보고를 다시 시작해야 합니다.
DXGK_INTERRUPT_DMA_FAULTED
시스템에서 사용하도록 예약되었습니다. 드라이버에서 사용하지 마세요.
DXGK_INTERRUPT_DISPLAYONLY_VSYNC
커널 모드 디스플레이 전용 드라이버에서 VSync가 완료되었습니다.

Windows 8 시작 지원.
DXGK_INTERRUPT_DISPLAYONLY_PRESENT_PROGRESS
커널 모드 표시 전용 드라이버에서 현재 작업이 완료되었거나 실패했습니다.

Windows 8 시작 지원.
DXGK_INTERRUPT_CRTC_VSYNC_WITH_MULTIPLANE_OVERLAY
Vsync는 다중 평면 오버레이를 지원하는 디스플레이 미니포트 드라이버에서 완료되었습니다.

Windows 8.1 시작 지원.
DXGK_INTERRUPT_MICACAST_CHUNK_PROCESSING_COMPLETE
GPU가 Miracast 인코딩 청크 인코딩을 완료했습니다.

디스플레이 미니포트 드라이버는 선택적으로 사용자 모드 드라이버가 GetNextChunkData 함수를 사용하여 가져올 수 있는 프라이빗 데이터를 제공할 수 있습니다.

Windows 8.1 시작 지원.
DXGK_INTERRUPT_DMA_PAGE_FAULTED
GPU에서 실행 중인 패킷 디바이스를 오류로 전환하거나 GPU를 다시 설정하는 등 OS가 복구 작업을 수행해야 하는 오류 조건이 발생하면 이 인터럽트 유형을 발생시켜야 합니다.

이 인터럽트 형식이 설정되면 인터럽트 데이터가 DXGKARGCB_NOTIFY_INTERRUPT_DATA 구조체의 DmaPageFaulted 멤버에 제공되어야 합니다.

Windows 10 시작 지원.
DXGK_INTERRUPT_CRTC_VSYNC_WITH_MULTIPLANE_OVERLAY2
Vsync는 다중 평면 오버레이를 지원하는 디스플레이 미니포트 드라이버에서 완료되었습니다. Windows 10 시작 지원.
DXGK_INTERRUPT_MONITORED_FENCE_SIGNALED
모니터링된 펜스가 신호를 받을 때 인터럽트 유형을 발생시켜야 합니다. Windows 10 시작 지원.
DXGK_INTERRUPT_HWQUEUE_PAGE_FAULTED
하드웨어 큐 페이지에 오류가 발생한 경우 인터럽트 유형을 발생시켜야 합니다. Windows 10 시작 지원.
DXGK_INTERRUPT_HWCONTEXTLIST_SWITCH_COMPLETED
하드웨어 컨텍스트 목록 스위치가 완료되면 인터럽트 유형을 발생시켜야 합니다. Windows 10 시작 지원.
DXGK_INTERRUPT_PERIODIC_MONITORED_FENCE_SIGNALED
이 인터럽트 유형은 주기적인 모니터링 펜스 신호가 표시될 때 발생해야 합니다.

Windows 10 시작 지원.
DXGK_INTERRUPT_SCHEDULING_LOG_INTERRUPT
예약 로그 인터럽트 중에 발생합니다. Windows 10 시작 지원.
DXGK_INTERRUPT_GPU_ENGINE_TIMEOUT
GPU 엔진 시간이 초과되었을 때 발생합니다. Windows 10 시작 지원.
DXGK_INTERRUPT_SUSPEND_CONTEXT_COMPLETED
일시 중단 컨텍스트가 완료되면 발생합니다. Windows 10 시작 지원.

요구 사항

   
지원되는 최소 클라이언트 Windows Vista 이상 버전의 Windows 운영 체제에서 사용할 수 있습니다.
머리글 d3dkmddi.h(D3dkmddi.h 포함)

추가 정보

DXGK_INTERRUPT_STATE

DXGKARG_CONTROLINTERRUPT2

DXGKARG_CONTROLINTERRUPT3

DXGKARGCB_NOTIFY_INTERRUPT_DATA

DxgkCbNotifyInterrupt

DxgkDdiControlInterrupt

DxgkDdi_ControlInterrupt2

DxgkDdi_ControlInterrupt3

DxgkDdiSubmitCommand

GetNextChunkData