Share via


DXGKARGCB_NOTIFY_INTERRUPT_DATA 구조체(d3dkmddi.h)

DXGKARGCB_NOTIFY_INTERRUPT_DATA 구조에는 DXGKCB_NOTIFY_INTERRUPT 콜백 함수에 대한 인터럽트 알림 정보가 포함됩니다.

구문

typedef struct _DXGKARGCB_NOTIFY_INTERRUPT_DATA {
  DXGK_INTERRUPT_TYPE                InterruptType;
  union {
    struct {
      UINT SubmissionFenceId;
      UINT NodeOrdinal;
      UINT EngineOrdinal;
    } DmaCompleted;
    struct {
      UINT PreemptionFenceId;
      UINT LastCompletedFenceId;
      UINT NodeOrdinal;
      UINT EngineOrdinal;
    } DmaPreempted;
    struct {
      UINT     FaultedFenceId;
      NTSTATUS Status;
      UINT     NodeOrdinal;
      UINT     EngineOrdinal;
    } DmaFaulted;
    struct {
      D3DDDI_VIDEO_PRESENT_TARGET_ID VidPnTargetId;
      PHYSICAL_ADDRESS               PhysicalAddress;
      UINT                           PhysicalAdapterMask;
    } CrtcVsync;
    struct {
      D3DDDI_VIDEO_PRESENT_TARGET_ID VidPnTargetId;
    } DisplayOnlyVsync;
    struct {
      D3DDDI_VIDEO_PRESENT_TARGET_ID     VidPnTargetId;
      UINT                               PhysicalAdapterMask;
      UINT                               MultiPlaneOverlayVsyncInfoCount;
      DXGK_MULTIPLANE_OVERLAY_VSYNC_INFO *pMultiPlaneOverlayVsyncInfo;
    } CrtcVsyncWithMultiPlaneOverlay;
    DXGKARGCB_PRESENT_DISPLAYONLY_PROGRESS DisplayOnlyPresentProgress;
    struct {
      D3DDDI_VIDEO_PRESENT_TARGET_ID VidPnTargetId;
      DXGK_MIRACAST_CHUNK_INFO       ChunkInfo;
      PVOID                          pPrivateDriverData;
      UINT                           PrivateDataDriverSize;
      NTSTATUS                       Status;
    } MiracastEncodeChunkCompleted;
    struct {
      UINT                       FaultedFenceId;
      UINT64                     FaultedPrimitiveAPISequenceNumber;
      DXGK_RENDER_PIPELINE_STAGE FaultedPipelineStage;
      UINT                       FaultedBindTableEntry;
      DXGK_PAGE_FAULT_FLAGS      PageFaultFlags;
      D3DGPU_VIRTUAL_ADDRESS     FaultedVirtualAddress;
      UINT                       NodeOrdinal;
      UINT                       EngineOrdinal;
      UINT                       PageTableLevel;
      DXGK_FAULT_ERROR_CODE      FaultErrorCode;
      HANDLE                     FaultedProcessHandle;
    } DmaPageFaulted;
    struct {
      D3DDDI_VIDEO_PRESENT_TARGET_ID      VidPnTargetId;
      UINT                                PhysicalAdapterMask;
      UINT                                MultiPlaneOverlayVsyncInfoCount;
      DXGK_MULTIPLANE_OVERLAY_VSYNC_INFO2 *pMultiPlaneOverlayVsyncInfo;
      ULONGLONG                           GpuFrequency;
      ULONGLONG                           GpuClockCounter;
    } CrtcVsyncWithMultiPlaneOverlay2;
    struct {
      UINT NodeOrdinal;
      UINT EngineOrdinal;
    } MonitoredFenceSignaled;
    struct {
      UINT   NodeOrdinal;
      UINT   EngineOrdinal;
      UINT64 ContextSwitchFence;
    } HwContextListSwitchCompleted;
    struct {
      UINT64                     FaultedFenceId;
      D3DGPU_VIRTUAL_ADDRESS     FaultedVirtualAddress;
      UINT64                     FaultedPrimitiveAPISequenceNumber;
      union {
        HANDLE FaultedHwQueue;
        HANDLE FaultedHwContext;
        HANDLE FaultedProcessHandle;
      };
      UINT                       NodeOrdinal;
      UINT                       EngineOrdinal;
      DXGK_RENDER_PIPELINE_STAGE FaultedPipelineStage;
      UINT                       FaultedBindTableEntry;
      DXGK_PAGE_FAULT_FLAGS      PageFaultFlags;
      UINT                       PageTableLevel;
      DXGK_FAULT_ERROR_CODE      FaultErrorCode;
    } HwQueuePageFaulted;
    struct {
      D3DDDI_VIDEO_PRESENT_TARGET_ID VidPnTargetId;
      UINT                           NotificationID;
    } PeriodicMonitoredFenceSignaled;
    struct {
      UINT NodeOrdinal;
      UINT EngineOrdinal;
    } SchedulingLogInterrupt;
    struct {
      UINT NodeOrdinal;
      UINT EngineOrdinal;
    } GpuEngineTimeout;
    struct {
      HANDLE hContext;
      UINT64 ContextSuspendFence;
    } SuspendContextCompleted;
    struct {
      D3DDDI_VIDEO_PRESENT_TARGET_ID      VidPnTargetId;
      UINT                                PhysicalAdapterMask;
      UINT                                MultiPlaneOverlayVsyncInfoCount;
      DXGK_MULTIPLANE_OVERLAY_VSYNC_INFO3 *pMultiPlaneOverlayVsyncInfo;
      ULONGLONG                           GpuFrequency;
      ULONGLONG                           GpuClockCounter;
    } CrtcVsyncWithMultiPlaneOverlay3;
    struct {
      UINT   NodeOrdinal;
      UINT   EngineOrdinal;
      UINT   SignaledNativeFenceCount;
      HANDLE *pSignaledNativeFenceArray;
    } NativeFenceSignaled;
    struct {
      UINT              NodeOrdinal;
      UINT              EngineOrdinal;
      DXGK_ENGINE_STATE NewState;
    } EngineStateChange;
    struct {
      UINT Reserved[16];
    } Reserved;
  };
  DXGKCB_NOTIFY_INTERRUPT_DATA_FLAGS Flags;
} DXGKARGCB_NOTIFY_INTERRUPT_DATA;

멤버

InterruptType

디스플레이 미니포트 드라이버가 GPU 스케줄러에 알리는 인터럽트 유형을 나타내는 DXGK_INTERRUPT_TYPE 형식의 값입니다.

DmaCompleted

InterruptTypeDXGK_INTERRUPT_DMA_COMPLETED 때 사용되는 구조체입니다.

DmaCompleted.SubmissionFenceId

완료된 명령의 DMA 버퍼 펜스 식별자입니다. 이 식별자는 드라이버의 DXGKDDI_SUBMITCOMMAND 함수를 호출하는 동안 완료된 최신 DMA 버퍼에 할당되었습니다.

DmaCompleted.NodeOrdinal

알림을 생성하는 노드의 인덱스(0부터 시작)입니다.

DmaCompleted.EngineOrdinal

NodeOrdinal이 지정하는 노드 내에서 알림을 생성하는 엔진의 인덱스(0부터 시작)입니다. 링크에 속하지 않는 그래픽 어댑터의 경우 항상 EngineOrdinal 을 0으로 설정해야 합니다. 링크의 일부인 그래픽 어댑터의 경우 EngineOrdinal 을 인터럽트 엔진이 속한 링크의 어댑터 인덱스로 설정합니다.

DmaPreempted

InterruptTypeDXGK_INTERRUPT_DMA_PREEMPTED 때 사용되는 구조체입니다.

DmaPreempted.PreemptionFenceId

선점 요청의 제출 식별자입니다.

DmaPreempted.LastCompletedFenceId

선점 전에 마지막으로 완료된 명령의 제출 식별자입니다.

DmaPreempted.NodeOrdinal

알림을 생성하는 노드의 인덱스(0부터 시작)입니다.

DmaPreempted.EngineOrdinal

NodeOrdinal이 지정하는 노드 내에서 알림을 생성하는 엔진의 인덱스(0부터 시작)입니다. 링크에 속하지 않는 그래픽 어댑터의 경우 항상 EngineOrdinal 을 0으로 설정해야 합니다. 링크의 일부인 그래픽 어댑터의 경우 EngineOrdinal 을 인터럽트 엔진이 속한 링크의 어댑터 인덱스로 설정합니다. GPU 스케줄러는 하드웨어가 선점 요청과 LastCompletedFenceId 가 지정하는 제출 사이의 모든 명령을 선점했다고 결정합니다.

DmaFaulted

InterruptTypeDXGK_INTERRUPT_DMA_FAULTED 때 사용되는 구조체입니다.

DmaFaulted.FaultedFenceId

잘못된 명령의 식별자입니다.

DmaFaulted.Status

잘못된 명령의 상태.

DmaFaulted.NodeOrdinal

알림을 생성하는 노드의 인덱스(0부터 시작)입니다.

DmaFaulted.EngineOrdinal

NodeOrdinal이 지정하는 노드 내에서 알림을 생성하는 엔진의 인덱스(0부터 시작)입니다. 링크에 속하지 않는 그래픽 어댑터의 경우 항상 EngineOrdinal 을 0으로 설정해야 합니다. 링크의 일부인 그래픽 어댑터의 경우 EngineOrdinal 을 인터럽트 엔진이 속한 링크의 어댑터 인덱스로 설정합니다.

CrtcVsync

InterruptTypeDXGK_INTERRUPT_CRTC_VSYNC 때 사용되는 구조체입니다.

CrtcVsync.VidPnTargetId

비디오 현재 네트워크(VidPN) 토폴로지의 경로에 있는 비디오 존재 대상의 0부터 시작하는 식별 번호입니다. 이 숫자는 세로 동기화가 발생하는 비디오 현재 대상을 나타냅니다.

CrtcVsync.PhysicalAddress

표시 버퍼의 실제 주소입니다. 모니터 표시 유형이 꺼져 있는 경우에도 운영 체제에는 NULL 이 아닌 실제 주소가 있어야 합니다. 이 주소는 표시 유형이 설정된 경우 픽셀 파이프라인에서 읽을 실제 주소로 설정해야 합니다.

CrtcVsync.PhysicalAdapterMask

세로 동기화가 발생하는 실제 어댑터 마스크입니다. 이 멤버에 유효한 값이 포함된 경우 드라이버는 Flags 멤버에서 ValidPhysicalAdapterMask 비트 필드 플래그도 설정해야 합니다.

DisplayOnlyVsync

InterruptTypeDXGK_INTERRUPT_DISPLAYONLY_VSYNC 때 사용되는 구조체입니다. Windows 8 부터 지원합니다.

DisplayOnlyVsync.VidPnTargetId

디스플레이 전용 드라이버의 경우 비디오 현재 네트워크(VidPN) 토폴로지의 경로에 있는 비디오 존재 대상의 0부터 시작하는 식별 번호입니다. 이 숫자는 세로 동기화가 발생하는 비디오 현재 대상을 나타냅니다. Windows 8 부터 지원합니다.

CrtcVsyncWithMultiPlaneOverlay

InterruptTypeDXGK_INTERRUPT_CRTC_VSYNC_WITH_MULTIPLANE_OVERLAY 때 사용되는 구조체입니다. 다중 평면 오버레이를 지원하는 디스플레이 미니포트 드라이버에 대한 VSync 알림을 제공합니다. Windows 8 부터 지원합니다.

CrtcVsyncWithMultiPlaneOverlay.VidPnTargetId

비디오 현재 네트워크(VidPN) 토폴로지의 경로에 있는 비디오 존재 대상의 0부터 시작하는 식별 번호입니다. 이 숫자는 세로 동기화가 발생하는 비디오 현재 대상을 나타냅니다. Windows 8 부터 지원합니다.

CrtcVsyncWithMultiPlaneOverlay.PhysicalAdapterMask

세로 동기화가 발생하는 실제 어댑터 마스크입니다. 이 멤버에 유효한 값이 포함된 경우 드라이버는 Flags 멤버에서 ValidPhysicalAdapterMask 비트 필드 플래그도 설정해야 합니다. Windows 8 부터 지원합니다.

CrtcVsyncWithMultiPlaneOverlay.MultiPlaneOverlayVsyncInfoCount

표시할 수 있는 오버레이 평면의 수입니다. Windows 8 부터 지원합니다.

CrtcVsyncWithMultiPlaneOverlay.pMultiPlaneOverlayVsyncInfo

VSync 간격 동안 표시할 오버레이 평면을 지정하는 DXGK_MULTIPLANE_OVERLAY_VSYNC_INFO 구조체에 대한 포인터입니다. Windows 8 부터 지원합니다.

DisplayOnlyPresentProgress

커널 모드의 KMDOD(디스플레이 전용 드라이버) 현재 작업의 진행률을 제공하는 DXGKARGCB_PRESENT_DISPLAYONLY_PROGRESS 구조체입니다. InterruptTypeDXGK_INTERRUPT_DISPLAYONLY_PRESENT_PROGRESS 때 사용됩니다. Windows 8 부터 지원합니다.

MiracastEncodeChunkCompleted

InterruptTypeDXGK_INTERRUPT_MICACAST_CHUNK_PROCESSING_COMPLETE 때 사용되는 구조체입니다. WDDM 1.3 이상에서 지원되는 미니포트 드라이버는 Windows 8.1 이상에서 실행됩니다.

MiracastEncodeChunkCompleted.VidPnTargetId

비디오 현재 네트워크(VidPN) 토폴로지의 경로에 있는 비디오 존재 대상의 0부터 시작하는 식별 번호입니다. 이 숫자는 인코딩이 수행되는 비디오 현재 대상을 나타냅니다. Windows 8.1 부터 지원합니다.

MiracastEncodeChunkCompleted.ChunkInfo

디스플레이 미니포트 드라이버가 보고하려는 청크 정보 구조를 인코딩하는 DXGK_MIRACAST_CHUNK_INFO . Windows 8.1 부터 지원합니다.

MiracastEncodeChunkCompleted.pPrivateDriverData

이 인코딩 청크를 설명하는 프라이빗 데이터 블록에 대한 포인터입니다. Windows 8.1 부터 지원합니다.

MiracastEncodeChunkCompleted.PrivateDataDriverSize

pPrivateDriverData의 개인 데이터 블록 크기(바이트)입니다. 이 값은 드라이버가 DXGK_MIRACAST_CAPS 구조에서 보고한 MaxChunkPrivateDriverDataSize 값보다 크지 않아야 합니다. Windows 8.1 부터 지원합니다.

MiracastEncodeChunkCompleted.Status

인코딩 청크가 청크의 큐에 성공적으로 추가되었는지 여부를 나타내는 NTSTATUS 형식의 값입니다. 성공하면 STATUS_SUCCESS 반환됩니다. 다른 값이 반환되면 청크를 큐에 추가할 수 없으며 모든 미해결 청크가 손실됩니다. Windows 8.1 부터 지원합니다.

의미
STATUS_SUCCESS 청크가 큐에 성공적으로 추가되었습니다.
STATUS_INVALID_PARAMETER 매개 변수의 유효성이 검사되었고 잘못된 것으로 확인되었습니다.
STATUS_NO_MEMORY ISR(인터럽트 서비스 루틴)에 무료 인코딩 청크가 부족했습니다.

DmaPageFaulted

InterruptTypeDXGK_INTERRUPT_DMA_PAGE_FAULTED 때 사용되는 구조체입니다. Windows 10 부터 지원합니다.

DmaPageFaulted.FaultedFenceId

오류 명령의 제출 펜스 ID입니다.

결함이 있는 펜스를 안정적으로 확인할 수 없는 경우 PageFaultFlags비트 DXGK_PAGE_FAULT_FENCE_INVALID 설정해야 하며 FaultedFenceId 는 0으로 설정해야 합니다. Windows 10 부터 지원합니다.

DmaPageFaulted.FaultedPrimitiveAPISequenceNumber

그리기 펜스 쓰기를 사용하는 경우 페이지 오류를 발생시킨 그리기 작업을 식별하거나 이러한 정보를 사용할 수 없는 경우 DXGK_PRIMITIVE_API_SEQUENCE_NUMBER_UNKNOWN . Windows 10 부터 지원합니다.

DmaPageFaulted.FaultedPipelineStage

오류가 생성된 동안 파이프라인 단계를 렌더링하거나 이러한 정보를 사용할 수 없는 경우 DXGK_RENDER_PIPELINE_STAGE_UNKNOWN . Windows 10 부터 지원합니다.

DmaPageFaulted.FaultedBindTableEntry

오류 발생 시 액세스되는 리소스의 바인딩 테이블 인덱스이거나 이러한 정보를 사용할 수 없는 경우 DXGK_BIND_TABLE_ENTRY_UNKNOWN . Windows 10 부터 지원합니다.

DmaPageFaulted.PageFaultFlags

오류의 특성을 지정하는 DXGK_PAGE_FAULT_FLAGS 열거형에 설명된 플래그입니다. Windows 10 부터 지원합니다.

DmaPageFaulted.FaultedVirtualAddress

GPU 가상 주소 오류 또는 오류에 다른 원인이 있는 경우 D3DGPU_NULL . 후자의 경우 FaultErrorCode 필드를 사용하여 GPU 오류를 설명해야 합니다. Windows 10 부터 지원합니다.

DmaPageFaulted.NodeOrdinal

알림을 생성하는 엔진의 노드 서수입니다. Windows 10 부터 지원합니다.

DmaPageFaulted.EngineOrdinal

알림을 생성하는 엔진의 엔진 서수입니다. Windows 10 부터 지원합니다.

DmaPageFaulted.PageTableLevel

오류 작업이 시도된 페이지 테이블 수준에 대해 설명합니다. Windows 10 부터 지원합니다.

DmaPageFaulted.FaultErrorCode

오류를 설명하는 DXGK_FAULT_ERROR_CODE 구조체입니다. Windows 10 부터 지원합니다.

DmaPageFaulted.FaultedProcessHandle

페이지 오류를 생성한 프로세스의 DirectX 그래픽 커널 프로세스 핸들 또는 오류가 있는 프로세스를 확인할 수 없는 경우 NULL 입니다. Windows 10 부터 지원합니다.

CrtcVsyncWithMultiPlaneOverlay2

InterruptTypeDXGK_INTERRUPT_CRTC_VSYNC_WITH_MULTIPLANE_OVERLAY2 때 사용되는 구조체입니다. Windows 10 버전 1607부터 지원됩니다.

CrtcVsyncWithMultiPlaneOverlay2.VidPnTargetId

다중 평면 오버레이 Vidpn 대상 ID가 있는 Vsync. Windows 10 버전 1607부터 지원됩니다.

CrtcVsyncWithMultiPlaneOverlay2.PhysicalAdapterMask

수직 동기화가 발생하는 실제 어댑터 마스크입니다. 이 멤버에 유효한 값이 포함된 경우 드라이버는 Flags 멤버에서 ValidPhysicalAdapterMask 비트 필드 플래그도 설정해야 합니다. Windows 10 버전 1607부터 지원됩니다.

CrtcVsyncWithMultiPlaneOverlay2.MultiPlaneOverlayVsyncInfoCount

표시할 수 있는 오버레이 평면의 수입니다. Windows 10 버전 1607부터 지원됩니다.

CrtcVsyncWithMultiPlaneOverlay2.pMultiPlaneOverlayVsyncInfo

VSync에서 업데이트한 각 오버레이 평면에 대한 정보를 지정하는 DXGK_MULTIPLANE_OVERLAY_VSYNC_INFO2 구조체에 대한 포인터입니다. Windows 10 버전 1607부터 지원됩니다.

CrtcVsyncWithMultiPlaneOverlay2.GpuFrequency

GPU 클록 카운터의 빈도입니다. Windows 10 버전 1607부터 지원됩니다.

CrtcVsyncWithMultiPlaneOverlay2.GpuClockCounter

VSYNC 인터럽트 시 GPU 클록 카운터입니다. GpuFrequency와 결합되어 VSYNC 인터럽트 시간을 나타냅니다. Windows 10 버전 1607부터 지원됩니다.

MonitoredFenceSignaled

InterruptTypeDXGK_INTERRUPT_MONITORED_FENCE_SIGNALED 때 사용되는 구조체입니다. Windows 10 버전 1703부터 지원됩니다.

MonitoredFenceSignaled.NodeOrdinal

알림을 생성하는 엔진의 노드 서수입니다. Windows 10 버전 1703부터 지원됩니다.

MonitoredFenceSignaled.EngineOrdinal

알림을 생성하는 엔진의 엔진 서수입니다. Windows 10 버전 1703부터 지원됩니다.

HwContextListSwitchCompleted

InterruptTypeDXGK_INTERRUPT_HWCONTEXTLIST_SWITCH_COMPLETED 때 사용되는 구조체입니다. Windows 10 버전 1703부터 지원됩니다.

HwContextListSwitchCompleted.NodeOrdinal

알림을 생성하는 엔진의 노드 서수입니다. Windows 10 버전 1703부터 지원됩니다.

HwContextListSwitchCompleted.EngineOrdinal

알림을 생성하는 엔진의 엔진 서수입니다. Windows 10 버전 1703부터 지원됩니다.

HwContextListSwitchCompleted.ContextSwitchFence

이 스위치 작업을 수행하는 데 사용되는 컨텍스트 스위치 펜스입니다. Windows 10 버전 1703부터 지원됩니다.

HwQueuePageFaulted

InterruptTypeDXGK_INTERRUPT_HWQUEUE_PAGE_FAULTED 때 사용되는 구조체입니다. Windows 10 버전 1703부터 지원됩니다.

HwQueuePageFaulted.FaultedFenceId

오류 명령의 HW 큐 진행률 펜스 ID입니다. 결함이 있는 펜스를 안정적으로 확인할 수 없는 경우 PageFaultFlags에는 DXGK_PAGE_FAULT_FENCE_INVALID 플래그가 설정되어 있어야 합니다. Windows 10 버전 1703부터 지원됩니다.

HwQueuePageFaulted.FaultedVirtualAddress

오류의 가상 주소 또는 오류에 다른 원인이 있는 경우 0입니다. 후자의 경우 FaultErrorCode 필드를 사용하여 GPU 오류를 설명해야 합니다. Windows 10 버전 1703부터 지원됩니다.

HwQueuePageFaulted.FaultedPrimitiveAPISequenceNumber

그리기당 펜스 쓰기를 사용하도록 설정하면 페이지 오류를 발생시킨 그리기를 식별하거나 이러한 정보를 사용할 수 없는 경우 DXGK_PRIMITIVE_API_SEQUENCE_NUMBER_UNKNOWN. Windows 10 버전 1703부터 지원됩니다.

HwQueuePageFaulted.FaultedHwQueue

DXGK_PAGE_FAULT_FENCE_INVALID 설정되지 않은 경우 오류를 생성한 HW 큐의 핸들을 지정합니다. Windows 10 버전 1703부터 지원됩니다.

HwQueuePageFaulted.FaultedHwContext

DXGK_PAGE_FAULT_FENCE_INVALID 및 DXGK_PAGE_FAULT_HW_CONTEXT_VALID 설정되면 오류를 생성한 HW 컨텍스트의 핸들을 지정합니다. Windows 10 버전 1703부터 지원됩니다.

HwQueuePageFaulted.FaultedProcessHandle

wen DXGK_PAGE_FAULT_FENCE_INVALID 및 DXGK_PAGE_FAULT_PROCESS_HANDLE_VALID 설정되며 오류를 생성한 프로세스의 핸들을 지정합니다. Windows 10 버전 1703부터 지원됩니다.

HwQueuePageFaulted.NodeOrdinal

알림을 생성하는 엔진의 노드 서수입니다. Windows 10 버전 1703부터 지원됩니다.

HwQueuePageFaulted.EngineOrdinal

알림을 생성하는 엔진의 엔진 서수입니다. Windows 10 버전 1703부터 지원됩니다.

HwQueuePageFaulted.FaultedPipelineStage

오류가 생성된 동안 파이프라인 단계를 렌더링하거나 이러한 정보를 사용할 수 없는 경우 DXGK_RENDER_PIPELINE_STAGE_UNKNOWN. Windows 10 버전 1703부터 지원됩니다.

HwQueuePageFaulted.FaultedBindTableEntry

오류 발생 시 액세스되는 리소스의 바인딩 테이블 인덱스이거나, 이러한 정보를 사용할 수 없는 경우 DXGK_BIND_TABLE_ENTRY_UNKNOWN. Windows 10 버전 1703부터 지원됩니다.

HwQueuePageFaulted.PageFaultFlags

페이지 오류 및 복구 정책의 특성을 지정하는 플래그입니다. Windows 10 버전 1703부터 지원됩니다.

HwQueuePageFaulted.PageTableLevel

오류 작업이 시도된 페이지 테이블 수준에 대해 설명합니다. Windows 10 버전 1703부터 지원됩니다.

HwQueuePageFaulted.FaultErrorCode

오류를 설명하는 오류 코드가 포함된 구조체입니다. Windows 10 버전 1703부터 지원됩니다.

PeriodicMonitoredFenceSignaled

InterruptTypeDXGK_INTERRUPT_PERIODIC_MONITORED_FENCE_SIGNALED 때 사용되는 구조체입니다. Windows 10 버전 1703부터 지원됩니다.

PeriodicMonitoredFenceSignaled.VidPnTargetId

모니터링된 펜스를 알리는 디스플레이입니다. Windows 10 버전 1703부터 지원됩니다.

PeriodicMonitoredFenceSignaled.NotificationID

여러 개의 알림 ID를 하나의 VidPnSource에 연결할 수 있습니다. Windows 10 버전 1703부터 지원됩니다.

SchedulingLogInterrupt

InterruptTypeDXGK_INTERRUPT_SCHEDULING_LOG_INTERRUPT 때 사용되는 구조체입니다. Windows 10 버전 1803부터 지원됩니다.

SchedulingLogInterrupt.NodeOrdinal

예약 로그 인터럽트 발생 엔진의 노드 서수입니다. Windows 10 버전 1803부터 지원됩니다.

SchedulingLogInterrupt.EngineOrdinal

예약 로그 인터럽트 발생 엔진 서수입니다. Windows 10 버전 1803부터 지원됩니다.

GpuEngineTimeout

InterruptTypeDXGK_INTERRUPT_GPU_ENGINE_TIMEOUT 때 사용되는 구조체입니다. Windows 10 버전 1803부터 지원됩니다.

GpuEngineTimeout.NodeOrdinal

시간이 초과되고 다시 설정이 필요한 엔진의 노드 서수입니다. Windows 10 버전 1803부터 지원됩니다.

GpuEngineTimeout.EngineOrdinal

시간이 초과되고 재설정이 필요한 엔진의 엔진 서수입니다. Windows 10 버전 1803부터 지원됩니다.

SuspendContextCompleted

InterruptTypeDXGK_INTERRUPT_SUSPEND_CONTEXT_COMPLETED 때 사용되는 구조체입니다. Windows 10 버전 1803부터 지원됩니다.

SuspendContextCompleted.hContext

일시 중단 승인이 적용되는 하드웨어 컨텍스트입니다. Windows 10 버전 1803부터 지원됩니다.

SuspendContextCompleted.ContextSuspendFence

컨텍스트가 펜스를 일시 중단합니다. Windows 10 버전 1803부터 지원됩니다.

CrtcVsyncWithMultiPlaneOverlay3

InterruptTypeDXGK_INTERRUPT_CRTC_VSYNC_WITH_MULTIPLANE_OVERLAY3 때 사용되는 구조체입니다. Windows Server 2022(WDDM 2.9)부터 사용할 수 있습니다.

CrtcVsyncWithMultiPlaneOverlay3.VidPnTargetId

다중 평면 오버레이 Vidpn 대상 ID가 있는 Vsync. Windows Server 2022(WDDM 2.9)부터 사용할 수 있습니다.

CrtcVsyncWithMultiPlaneOverlay3.PhysicalAdapterMask

수직 동기화가 발생하는 실제 어댑터 마스크입니다. 이 멤버에 유효한 값이 포함된 경우 드라이버는 Flags 멤버에서 ValidPhysicalAdapterMask 비트 필드 플래그도 설정해야 합니다. Windows Server 2022(WDDM 2.9)부터 사용할 수 있습니다.

CrtcVsyncWithMultiPlaneOverlay3.MultiPlaneOverlayVsyncInfoCount

CrtcVsyncWithMultiPlaneOverlay3.pMultiPlaneOverlayVsyncInfo가 가리키는 DXGK_MULTIPLANE_OVERLAY_VSYNC_INFO3 구조체의 수입니다. 이러한 구조체는 표시할 수 있는 오버레이 평면을 설명합니다. Windows Server 2022(WDDM 2.9)부터 사용할 수 있습니다.

CrtcVsyncWithMultiPlaneOverlay3.pMultiPlaneOverlayVsyncInfo

VSync에서 업데이트한 각 오버레이 평면에 대한 정보를 지정하는 DXGK_MULTIPLANE_OVERLAY_VSYNC_INFO3 구조체 배열에 대한 포인터입니다. 자세한 내용은 하드웨어 대칭 이동 큐 를 참조하세요. Windows Server 2022(WDDM 2.9)부터 사용할 수 있습니다.

CrtcVsyncWithMultiPlaneOverlay3.GpuFrequency

GPU 클록 카운터의 빈도입니다. Windows Server 2022(WDDM 2.9)부터 사용할 수 있습니다.

CrtcVsyncWithMultiPlaneOverlay3.GpuClockCounter

VSYNC 인터럽트 시 GPU 클록 카운터입니다. GpuFrequency와 결합되어 VSYNC 인터럽트 시간을 나타냅니다. Windows Server 2022(WDDM 2.9)부터 사용할 수 있습니다.

NativeFenceSignaled

NativeFenceSignaled.NodeOrdinal

NativeFenceSignaled.EngineOrdinal

NativeFenceSignaled.SignaledNativeFenceCount

NativeFenceSignaled.pSignaledNativeFenceArray

EngineStateChange

EngineStateChange.NodeOrdinal

EngineStateChange.EngineOrdinal

EngineStateChange.NewState

Reserved

다음에 사용하도록 예약됩니다.

Reserved.Reserved[16]

나중에 사용하도록 예약된 32비트 값의 배열입니다.

Flags

디스플레이 미니포트 드라이버가 DxgkCbNotifyInterrupt 함수를 호출할 때 실제 어댑터 마스크를 제공하는지 여부를 나타내는 DXGKCB_NOTIFY_INTERRUPT_DATA_FLAGS 구조체입니다.

설명

미니포트 드라이버는 DXGKARGCB_NOTIFY_INTERRUPT_DATA 채운 다음 DXGKCB_SYNCHRONIZE_EXECUTION 콜백을 사용하여 인터럽트와 동기화합니다. DXGKCB_SYNCHRONIZE_EXECUTION 콜백의 SynchronizeRoutine 매개 변수는 적절한 경우 OS에서 호출되는 미니포트 구현 함수를 가리킨 다음, 드라이버는 DXGKCB_NOTIFY_INTERRUPT 콜백을 사용하여 OS로 다시 호출하기 전에 매개 변수 정보를 채웁니다. 그런 다음 OS는 DXGK_MULTIPLANE_OVERLAY_VSYNC_INFO2 구조체의 정보를 사용하여 스케줄러와 함께 인터럽트를 처리합니다.

InterruptType 멤버의 값에 따라 디스플레이 미니포트 드라이버는 이 구조체에서 적절한 공용 구조체 멤버를 설정해야 합니다. 예를 들어 InterruptType의 DXGK_INTERRUPT_DMA_COMPLETED 값에 해당하는 DMA(직접 메모리 액세스) 버퍼 펜스의 끝 부분에 대해 드라이버는 DmaCompleted 멤버의 SubmissionFenceId 멤버에서 값을 설정해야 합니다. 이 값은 방금 완료된 DMA 버퍼에 할당된 드라이버의 DxgkDdiSubmitCommand 함수인 DMA 버퍼 펜스 식별자여야 합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Vista(WDDM 1.0)
머리글 d3dkmddi.h(D3dkmddi.h 포함)

추가 정보

DXGK_INTERRUPT_TYPE

DXGK_MIRACAST_CAPS

DXGK_MIRACAST_CHUNK_INFO

DXGK_MULTIPLANE_OVERLAY_VSYNC_INFO

DXGKCB_NOTIFY_INTERRUPT

DXGKCB_NOTIFY_INTERRUPT_DATA_FLAGS

DXGK_PAGE_FAULT_FLAGS

DXGKARGCB_PRESENT_DISPLAYONLY_PROGRESS

DxgkDdiSubmitCommand