共用方式為


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;
      HANDLE hHWQueue;
    } 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

DXGK_INTERRUPT_TYPE型別值,指出顯示迷你埠驅動程式正在通知 GPU 排程器的相關中斷類型。

DmaCompleted

DXGK_INTERRUPT_DMA_COMPLETEDInterruptType 時所使用的結構。

DmaCompleted.SubmissionFenceId

已完成命令的 DMA 緩衝區柵欄標識碼。 此標識元是在呼叫驅動程式的 DXGKDDI_SUBMITCOMMAND 函式時指派給最新的已完成 DMA 緩衝區。

DmaCompleted.NodeOrdinal

產生通知之節點之以零起始的索引。

DmaCompleted.EngineOrdinal

NodeOrdinal 指定之節點內引擎的以零起始的索引,會產生通知。 對於不屬於連結的圖形配接器,您應該一律將 EngineOrdinal 設為 0。 對於屬於連結的圖形配接器,請將 EngineOrdinal 設定為中斷引擎所屬連結中適配卡的配接器索引。

DmaPreempted

InterruptTypeDXGK_INTERRUPT_DMA_PREEMPTED時所使用的結構。

DmaPreempted.PreemptionFenceId

先佔要求的提交標識碼。

DmaPreempted.LastCompletedFenceId

先占之前最後一個已完成命令的提交標識碼。

DmaPreempted.NodeOrdinal

產生通知之節點之以零起始的索引。

DmaPreempted.EngineOrdinal

NodeOrdinal 指定之節點內引擎的以零起始的索引,會產生通知。 對於不屬於連結的圖形配接器,您應該一律將 EngineOrdinal 設為 0。 對於屬於連結的圖形配接器,請將 EngineOrdinal 設定為中斷引擎所屬連結中適配卡的配接器索引。 GPU 排程器會判斷硬體會先佔先佔要求與 LastCompletedFenceId 指定的提交之間的所有命令。

DmaFaulted

InterruptTypeDXGK_INTERRUPT_DMA_FAULTED時所使用的結構。

DmaFaulted.FaultedFenceId

錯誤命令的識別碼。

DmaFaulted.Status

錯誤命令的狀態。

DmaFaulted.NodeOrdinal

產生通知之節點之以零起始的索引。

DmaFaulted.EngineOrdinal

NodeOrdinal 指定之節點內引擎的以零起始的索引,會產生通知。 對於不屬於連結的圖形配接器,您應該一律將 EngineOrdinal 設為 0。 對於屬於連結的圖形配接器,請將 EngineOrdinal 設定為中斷引擎所屬連結中適配卡的配接器索引。

CrtcVsync

InterruptTypeDXGK_INTERRUPT_CRTC_VSYNC時所使用的結構。

CrtcVsync.VidPnTargetId

視訊簡訊簡訊 (VidPN) 拓撲路徑中視訊目前目標之以零起始的識別碼。 此數位代表發生垂直同步的影片呈現目標。

CrtcVsync.PhysicalAddress

顯示緩衝區的實體位址。 當監視可見度關閉時,操作系統仍會預期非NULL 實體位址。 如果可見度開啟,此位址應設定為圖元管線從中讀取的實體位址。

CrtcVsync.PhysicalAdapterMask

發生垂直同步的實體配接器遮罩。 如果這個成員包含有效的值,驅動程式也必須在 Flags 成員中設定 ValidPhysicalAdapterMask 位字段旗標。

DisplayOnlyVsync

InterruptTypeDXGK_INTERRUPT_DISPLAYONLY_VSYNC時所使用的結構。 從 Windows 8 開始支援。

DisplayOnlyVsync.VidPnTargetId

針對僅顯示驅動程式,視訊呈現網路 (VidPN) 拓撲路徑中視訊目前目標以零起始的標識符。 此數位代表發生垂直同步的影片呈現目標。 從 Windows 8 開始支援。

CrtcVsyncWithMultiPlaneOverlay

InterruptTypeDXGK_INTERRUPT_CRTC_VSYNC_WITH_MULTIPLANE_OVERLAY時所使用的結構。 提供 VSync 通知,以顯示支援多平面重疊的迷你埠驅動程式。 從 Windows 8 開始支援。

CrtcVsyncWithMultiPlaneOverlay.VidPnTargetId

視訊簡訊簡訊 (VidPN) 拓撲路徑中視訊目前目標之以零起始的識別碼。 此數位代表發生垂直同步的影片呈現目標。 從 Windows 8 開始支援。

CrtcVsyncWithMultiPlaneOverlay.PhysicalAdapterMask

發生垂直同步的實體配接器遮罩。 如果這個成員包含有效的值,驅動程式也必須在 Flags 成員中設定 ValidPhysicalAdapterMask 位字段旗標。 從 Windows 8 開始支援。

CrtcVsyncWithMultiPlaneOverlay.MultiPlaneOverlayVsyncInfoCount

可供顯示的重疊平面數目。 從 Windows 8 開始支援。

CrtcVsyncWithMultiPlaneOverlay.pMultiPlaneOverlayVsyncInfo

DXGK_MULTIPLANE_OVERLAY_VSYNC_INFO 結構的指標,指定要在 VSync 間隔期間顯示的重疊平面。 從 Windows 8 開始支援。

DisplayOnlyPresentProgress

DXGKARGCB_PRESENT_DISPLAYONLY_PROGRESS 結構,提供核心模式僅顯示驅動程式 (KMDOD) 目前作業的進度。 InterruptTypeDXGK_INTERRUPT_DISPLAYONLY_PRESENT_PROGRESS時使用。 從 Windows 8 開始支援。

MiracastEncodeChunkCompleted

InterruptTypeDXGK_INTERRUPT_MICACAST_CHUNK_PROCESSING_COMPLETE時所使用的結構。 WDDM 1.3 和更新版本支持顯示在 Windows 8.1 和更新版本上執行的迷你埠驅動程式。

MiracastEncodeChunkCompleted.VidPnTargetId

視訊簡訊簡訊 (VidPN) 拓撲路徑中視訊目前目標之以零起始的識別碼。 這個數位代表正在執行編碼的影片呈現目標。 從 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

提交柵欄標識碼的錯誤命令。

如果無法可靠地判斷錯誤的柵欄,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 目標標識碼的 Vsync。從 Windows 10 版本 1607 開始支援。

CrtcVsyncWithMultiPlaneOverlay2.PhysicalAdapterMask

發生垂直同步的實體配接器遮罩。 如果這個成員包含有效的值,驅動程式也必須在 Flags 成員中設定 ValidPhysicalAdapterMask 位字段旗標。 從 Windows 10 版本 1607 開始支援。

CrtcVsyncWithMultiPlaneOverlay2.MultiPlaneOverlayVsyncInfoCount

可供顯示的重疊平面數目。 從 Windows 10 版本 1607 開始支援。

CrtcVsyncWithMultiPlaneOverlay2.pMultiPlaneOverlayVsyncInfo

DXGK_MULTIPLANE_OVERLAY_VSYNC_INFO2 結構的指標,指定 VSync 所更新之每個重疊平面的資訊。 從 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 伩列進度柵欄標識碼。 如果無法可靠地判斷錯誤的柵欄,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

設定溫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

DXGK_INTERRUPT_PERIODIC_MONITORED_FENCE_SIGNALEDInterruptType 時所使用的結構。 從 Windows 10 版本 1703 開始支援。

PeriodicMonitoredFenceSignaled.VidPnTargetId

顯示會發出受監視柵欄的訊號。 從 Windows 10 版本 1703 開始支援。

PeriodicMonitoredFenceSignaled.NotificationID

通知標識碼為多個可以附加至一個 VidPnSource。 從 Windows 10 版本 1703 開始支援。

SchedulingLogInterrupt

DXGK_INTERRUPT_SCHEDULING_LOG_INTERRUPTInterruptType 時所使用的結構。 從 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 目標標識碼的 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

DXGK_MULTIPLANE_OVERLAY_VSYNC_INFO3 結構的陣列指標,指定 VSync 所更新之每個重疊平面的資訊。 如需詳細資訊,請參閱 硬體翻轉佇列。 從 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

[in]InterruptTypeDXGK_INTERRUPT_NATIVE_FENCE_SIGNALED時所使用的結構。 如需原生柵欄的詳細資訊,請參閱原生 GPU 柵欄物件。 從 Windows 11 版本 24H2 開始支援 (WDDM 3.2)。

NativeFenceSignaled.NodeOrdinal

產生通知的引擎節點序數。 從 Windows 11 版本 24H2 開始支援 (WDDM 3.2)。

NativeFenceSignaled.EngineOrdinal

產生通知的引擎序數。 從 Windows 11 版本 24H2 開始支援 (WDDM 3.2)。

NativeFenceSignaled.SignaledNativeFenceCount

pSignaledNativeFenceArray 指向的訊號原生柵欄陣列陣。 從 Windows 11 版本 24H2 開始支援 (WDDM 3.2)。

NativeFenceSignaled.pSignaledNativeFenceArray

陣列,包含已發出訊號且需要解除封鎖之所有原生柵欄的OS核心模式句柄。 如果這個陣列是空的,則OS會重新掃描所有擱置中的原生柵欄服務員,而不是信號原生柵欄陣列所指定的子集。 Dxgkrnl 只有在 DXGK_VIDSCHCAPS::OptimizedNativeFenceInterrupt 為 FALSE 時,才會讀取此值。 從 Windows 11 版本 24H2 開始支援 (WDDM 3.2)。

NativeFenceSignaled.hHWQueue

在引發中斷的引擎上執行的 HWQueue KMD 句柄。 如果此句柄為 NULL,則 Dxgkrnl 會重新掃描此引擎上所有 HWQueues 的記錄緩衝區。 Dxgkrnl 只有在 DXGK_VIDSCHCAPS::OptimizedNativeFenceInterrupt 為 TRUE 時,才會讀取此值。 從 Windows 11 版本 24H2 開始支援 (WDDM 3.2)。

EngineStateChange

[in]InterruptTypeDXGK_INTERRUPT_GPU_ENGINE_STATE_CHANGE時所使用的結構。 如需詳細資訊,請參閱 使用者模式工作提交。 從 Windows 11 版本 24H2 (WDDM 3.2) 開始提供。

EngineStateChange.NodeOrdinal

狀態變更之引擎的節點序數。 從 Windows 11 版本 24H2 (WDDM 3.2) 開始提供。

EngineStateChange.EngineOrdinal

引擎序數,其狀態已變更。 從 Windows 11 版本 24H2 (WDDM 3.2) 開始提供。

EngineStateChange.NewState

指定引擎新狀態的 DXGK_ENGINE_STATE 值。 從 Windows 11 版本 24H2 (WDDM 3.2) 開始提供。

Reserved

保留供日後使用。

Reserved.Reserved[16]

保留供日後使用的32位值數組。

Flags

DXGKCB_NOTIFY_INTERRUPT_DATA_FLAGS 結構,指出顯示迷你埠驅動程式是否在呼叫 DxgkCbNotifyInterrupt 函式時提供實體適配卡遮罩。

言論

迷你埠驅動程式會填入 DXGKARGCB_NOTIFY_INTERRUPT_DATA,然後使用 DXGKCB_SYNCHRONIZE_EXECUTION 回呼來與中斷同步。 DXGKCB_SYNCHRONIZE_EXECUTION 回呼的 SynchronizeRoutine 參數指向適當時由 OS 呼叫的迷你埠實作函式,然後驅動程式會在呼叫 OS 之前填入參數資訊,再使用 DXGKCB_NOTIFY_INTERRUPT 回呼呼叫 OS。 然後,OS 會使用 DXGK_MULTIPLANE_OVERLAY_VSYNC_INFO2結構中的資訊,使用排程器來處理中斷。

InterruptType 成員中的值而定,顯示迷你埠驅動程式應該在此結構中設定適當的等位成員。 例如,對於直接記憶體存取 (DMA) 緩衝區柵欄的結尾,其對應至 InterruptType中的DXGK_INTERRUPT_DMA_COMPLETED值,驅動程式必須在 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