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時所使用的結構。 如需原生柵欄的詳細資訊,請參閱
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_MULTIPLANE_OVERLAY_VSYNC_INFO
DXGKCB_NOTIFY_INTERRUPT_DATA_FLAGS