Поделиться через


структура 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_COMPLETEDпрерывания .

DmaCompleted.SubmissionFenceId

Идентификатор забора буфера DMA завершенной команды. Этот идентификатор был назначен во время вызова функции DXGKDDI_SUBMITCOMMAND драйвера для последнего завершенного буфера DMA.

DmaCompleted.NodeOrdinal

Отсчитываемый от нуля индекс узла, который создает уведомление.

DmaCompleted.EngineOrdinal

Отсчитываемый от нуля индекс подсистемы в узле, который nodeOrdinal указывает, что создает уведомление. Для графических адаптеров, которые не являются частью ссылки, всегда следует задать для EngineOrdinal значение 0. Для графических адаптеров, входящих в связь, задайте EngineOrdinal индекс адаптера в ссылке, к которой принадлежит подсистема прерывания.

DmaPreempted

Структура, используемая при прерывания DXGK_INTERRUPT_DMA_PREEMPTED.

DmaPreempted.PreemptionFenceId

Идентификатор отправки запроса предварительного применения.

DmaPreempted.LastCompletedFenceId

Идентификатор отправки последней завершенной команды перед началом.

DmaPreempted.NodeOrdinal

Отсчитываемый от нуля индекс узла, который создает уведомление.

DmaPreempted.EngineOrdinal

Отсчитываемый от нуля индекс подсистемы в узле, который nodeOrdinal указывает, что создает уведомление. Для графических адаптеров, которые не являются частью ссылки, всегда следует задать EngineOrdinal значение 0. Для графических адаптеров, входящих в связь, задайте EngineOrdinal индекс адаптера в ссылке, к которой принадлежит подсистема прерывания. Планировщик GPU определяет, что оборудование удаляло все команды между запросом предварительной отмены и отправкой, которая LastCompletedFenceId.

DmaFaulted

Структура, используемая при DXGK_INTERRUPT_DMA_FAULTEDпрерывания .

DmaFaulted.FaultedFenceId

Идентификатор неисправной команды.

DmaFaulted.Status

Состояние неисправной команды.

DmaFaulted.NodeOrdinal

Отсчитываемый от нуля индекс узла, который создает уведомление.

DmaFaulted.EngineOrdinal

Отсчитываемый от нуля индекс подсистемы в узле, который nodeOrdinal указывает, что создает уведомление. Для графических адаптеров, которые не являются частью ссылки, всегда следует задать для EngineOrdinal значение 0. Для графических адаптеров, входящих в связь, задайте EngineOrdinal индекс адаптера в ссылке, к которой принадлежит подсистема прерывания.

CrtcVsync

Структура, используемая при прерывания DXGK_INTERRUPT_CRTC_VSYNC.

CrtcVsync.VidPnTargetId

Отсчитываемый от нуля идентификационный номер видео, который присутствует в пути к топологии VidPN. Это число представляет собой целевой объект, на котором выполняется вертикальная синхронизация.

CrtcVsync.PhysicalAddress

Физический адрес отображаемого буфера. Если мониторинг видимости отключен, операционная система по-прежнему ожидаетNULL физического адреса. Этот адрес должен быть задан на физический адрес, считывающийся конвейером пикселей, если видимость была включена.

CrtcVsync.PhysicalAdapterMask

Маска физического адаптера, в которой происходит вертикальная синхронизация. Если этот элемент содержит допустимое значение, драйвер также должен задать флаг ValidPhysicalAdapterMask бит-поле в элементе Flags.

DisplayOnlyVsync

Структура, используемая при Прерывания ТипаDXGK_INTERRUPT_DISPLAYONLY_VSYNC. Поддерживается начиная с Windows 8.

DisplayOnlyVsync.VidPnTargetId

Для драйвера, доступного только для отображения, отсчитываемый от нуля идентификационный номер целевого объекта видео, присутствующих в пути к топологии vidPN. Это число представляет собой целевой объект, на котором выполняется вертикальная синхронизация. Поддерживается начиная с Windows 8.

CrtcVsyncWithMultiPlaneOverlay

Структура, используемая при Прерывания ТипаDXGK_INTERRUPT_CRTC_VSYNC_WITH_MULTIPLANE_OVERLAY. Предоставляет уведомления VSync для отображения драйверов минипорта, поддерживающих многоплановые наложения. Поддерживается начиная с Windows 8.

CrtcVsyncWithMultiPlaneOverlay.VidPnTargetId

Отсчитываемый от нуля идентификационный номер видео, который присутствует в пути к топологии VidPN. Это число представляет собой целевой объект, на котором выполняется вертикальная синхронизация. Поддерживается начиная с Windows 8.

CrtcVsyncWithMultiPlaneOverlay.PhysicalAdapterMask

Маска физического адаптера, в которой происходит вертикальная синхронизация. Если этот элемент содержит допустимое значение, драйвер также должен задать флаг ValidPhysicalAdapterMask бит-поле в элементе Flags. Поддерживается начиная с Windows 8.

CrtcVsyncWithMultiPlaneOverlay.MultiPlaneOverlayVsyncInfoCount

Количество отображаемых плоскостей наложения. Поддерживается начиная с Windows 8.

CrtcVsyncWithMultiPlaneOverlay.pMultiPlaneOverlayVsyncInfo

Указатель на DXGK_MULTIPLANE_OVERLAY_VSYNC_INFO структуру, указывающую плоскость наложения для отображения во время интервала VSync. Поддерживается начиная с Windows 8.

DisplayOnlyPresentProgress

Структура DXGKARGCB_PRESENT_DISPLAYONLY_PROGRESS, которая обеспечивает ход выполнения текущей операции драйвера только для отображения в режиме ядра (KMDOD). Используется при Прерывания ТипаDXGK_INTERRUPT_DISPLAYONLY_PRESENT_PROGRESS. Поддерживается начиная с Windows 8.

MiracastEncodeChunkCompleted

Структура, используемая при DXGK_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. Это значение не должно превышать значение MaxChunkPrivateDriverDataSize, которое драйвер сообщил в структуре DXGK_MIRACAST_CAPS. Поддерживается начиная с Windows 8.1.

MiracastEncodeChunkCompleted.Status

Значение типа NTSTATUS, указывающее, был ли блок кода успешно добавлен в очередь блоков. При успешном выполнении возвращается STATUS_SUCCESS. Если возвращается любое другое значение, блок не может быть добавлен в очередь, и все невыполненные фрагменты будут потеряны. Поддерживается начиная с Windows 8.1.

Ценность Значение
STATUS_SUCCESS Блок успешно добавлен в очередь.
STATUS_INVALID_PARAMETER Параметры были проверены и определены как неверные.
STATUS_NO_MEMORY Подпрограмма прерывания службы (ISR) закончилась из бесплатных блоков кодирования.

DmaPageFaulted

Структура, используемая при Прерывания ТипаDXGK_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

Структура, используемая при прерывания DXGK_INTERRUPT_CRTC_VSYNC_WITH_MULTIPLANE_OVERLAY2. Поддерживается начиная с Windows 10 версии 1607.

CrtcVsyncWithMultiPlaneOverlay2.VidPnTargetId

Vsync с многоплановой наложением целевого идентификатора Vidpn. Поддерживается начиная с Windows 10 версии 1607.

CrtcVsyncWithMultiPlaneOverlay2.PhysicalAdapterMask

Маска физического адаптера, в которой происходит вертикальная синхронизация. Если этот элемент содержит допустимое значение, драйвер также должен задать флаг ValidPhysicalAdapterMask бит-поле в элементе Flags. Поддерживается начиная с 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

Счетчик часов GPU во время прерывания VSYNC. В сочетании с GpuFrequency это означает время прерывания VSYNC. Поддерживается начиная с Windows 10 версии 1607.

MonitoredFenceSignaled

Структура, используемая при прерывания DXGK_INTERRUPT_MONITORED_FENCE_SIGNALED. Поддерживается начиная с Windows 10 версии 1703.

MonitoredFenceSignaled.NodeOrdinal

Порядковый номер узла обработчика, создающего уведомление. Поддерживается начиная с Windows 10 версии 1703.

MonitoredFenceSignaled.EngineOrdinal

Порядковый номер обработчика, создающего уведомление. Поддерживается начиная с Windows 10 версии 1703.

HwContextListSwitchCompleted

Структура, используемая при DXGK_INTERRUPT_HWCONTEXTLIST_SWITCH_COMPLETEDпрерывания . Поддерживается начиная с Windows 10 версии 1703.

HwContextListSwitchCompleted.NodeOrdinal

Порядковый номер узла обработчика, создающего уведомление. Поддерживается начиная с Windows 10 версии 1703.

HwContextListSwitchCompleted.EngineOrdinal

Порядковый номер обработчика, создающего уведомление. Поддерживается начиная с Windows 10 версии 1703.

HwContextListSwitchCompleted.ContextSwitchFence

Забор переключения контекста, используемый для выполнения этой операции переключения. Поддерживается начиная с Windows 10 версии 1703.

HwQueuePageFaulted

Структура, используемая при Прерывания ТипаDXGK_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

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

Структура, используемая при прерывания DXGK_INTERRUPT_PERIODIC_MONITORED_FENCE_SIGNALED. Поддерживается начиная с Windows 10 версии 1703.

PeriodicMonitoredFenceSignaled.VidPnTargetId

Дисплей сигнализирует отслеживаемого забора. Поддерживается начиная с Windows 10 версии 1703.

PeriodicMonitoredFenceSignaled.NotificationID

Идентификатор уведомления, как несколько, может быть присоединен к одному VidPnSource. Поддерживается начиная с Windows 10 версии 1703.

SchedulingLogInterrupt

Структура, используемая при DXGK_INTERRUPT_SCHEDULING_LOG_INTERRUPTтипа прерывания . Поддерживается начиная с Windows 10 версии 1803.

SchedulingLogInterrupt.NodeOrdinal

Порядковый номер узла, который вызвал прерывание журнала планирования. Поддерживается начиная с Windows 10 версии 1803.

SchedulingLogInterrupt.EngineOrdinal

Порядковый номер обработчика, который вызвал прерывание журнала планирования. Поддерживается начиная с Windows 10 версии 1803.

GpuEngineTimeout

Структура, используемая при прерывания DXGK_INTERRUPT_GPU_ENGINE_TIMEOUT. Поддерживается начиная с Windows 10 версии 1803.

GpuEngineTimeout.NodeOrdinal

Порядковый номер узла, который истек и требует сброса. Поддерживается начиная с Windows 10 версии 1803.

GpuEngineTimeout.EngineOrdinal

Порядковый номер двигателя, который истек и нуждается в сбросе. Поддерживается начиная с Windows 10 версии 1803.

SuspendContextCompleted

Структура, используемая при DXGK_INTERRUPT_SUSPEND_CONTEXT_COMPLETED типа прерывания . Поддерживается начиная с Windows 10 версии 1803.

SuspendContextCompleted.hContext

Контекст оборудования, для которому предназначено подтверждение приостановки. Поддерживается начиная с Windows 10 версии 1803.

SuspendContextCompleted.ContextSuspendFence

Контекст приостанавливает ограждение. Поддерживается начиная с Windows 10 версии 1803.

CrtcVsyncWithMultiPlaneOverlay3

Структура, используемая при прерывания DXGK_INTERRUPT_CRTC_VSYNC_WITH_MULTIPLANE_OVERLAY3. Доступно начиная с Windows Server 2022 (WDDM 2.9).

CrtcVsyncWithMultiPlaneOverlay3.VidPnTargetId

Vsync с многоплановой наложением целевого идентификатора Vidpn. Доступно начиная с Windows Server 2022 (WDDM 2.9).

CrtcVsyncWithMultiPlaneOverlay3.PhysicalAdapterMask

Маска физического адаптера, в которой происходит вертикальная синхронизация. Если этот элемент содержит допустимое значение, драйвер также должен задать флаг ValidPhysicalAdapterMask бит-поле в элементе Flags. Доступно начиная с Windows Server 2022 (WDDM 2.9).

CrtcVsyncWithMultiPlaneOverlay3.MultiPlaneOverlayVsyncInfoCount

Число структур DXGK_MULTIPLANE_OVERLAY_VSYNC_INFO3, на которые CrtcVsyncWithMultiPlaneOverlay3.pMultiPlaneOverlayVsyncInfo. Эти структуры описывают плоскости наложения, доступные для отображения. Доступно начиная с 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

Счетчик часов GPU во время прерывания VSYNC. В сочетании с GpuFrequency это означает время прерывания VSYNC. Доступно начиная с Windows Server 2022 (WDDM 2.9).

NativeFenceSignaled

[in] Структура, используемая при прерывания DXGK_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

Массив, содержащий дескрипторы режима ядра ОС всех собственных ограждений, которые были сигнализованы и требуют разблокировки официантов. Если этот массив пуст, ОС пересканет все ожидающие собственные официанты забора вместо подмножества, указанного сигнальным собственным массивом ограждения. Dxgkrnl считывает это значение только в том случае, если DXGK_VIDSCHCAPS::OptimizedNativeFenceInterrupt имеет значение FALSE. Поддерживается начиная с Windows 11 версии 24H2 (WDDM 3.2).

NativeFenceSignaled.hHWQueue

Дескриптор KMD HWQueue, работающий на подсистеме, вызвавщей прерывание. Если этот дескриптор имеет значение NULL, Dxgkrnl повторно сканирует буфер журнала всех HWQueues на этом обработчике. Dxgkrnl считывает это значение только в том случае, если DXGK_VIDSCHCAPS::OptimizedNativeFenceInterrupt имеет значение TRUE. Поддерживается начиная с Windows 11 версии 24H2 (WDDM 3.2).

EngineStateChange

[in] Структура, используемая при прерывания DXGK_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 для синхронизации с прерыванием. Параметр SynchronizeRoutine обратного вызова DXGKCB_SYNCHRONIZE_EXECUTION указывает на функцию, реализованную мини-портом, которая вызывается ОС при необходимости, а затем драйвер заполняет сведения о параметрах перед возвратом в ОС с помощью обратного вызова DXGKCB_NOTIFY_INTERRUPT. Затем ОС обрабатывает прерывание с помощью планировщика с помощью сведений в структуре DXGK_MULTIPLANE_OVERLAY_VSYNC_INFO2.

В зависимости от значения в элементе InterruptType драйвер минипорта должен задать соответствующий член объединения в этой структуре. Например, для конца забора буфера прямого доступа к памяти (DMA), соответствующего значению DXGK_INTERRUPT_DMA_COMPLETED в InterruptType, драйвер должен задать значение в элементе SubmissionFenceId члена DmaCompleted. Это значение должно быть идентификатором ограждения буфера DMA, который dxgkDdiSubmitCommand функцию, назначенную только что завершенным буферу DMA.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows Vista (WDDM 1.0)
заголовка d3dkmddi.h (include 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