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


функция обратного вызова PFND3DDDI_SETMARKERMODE (d3dumddi.h)

Уведомляет драйвер отображения пользовательского режима о том, что он должен поддерживать тип события трассировки событий для маркера Windows (ETW). При необходимости реализованы модели драйвера windows (WDDM) 1.3 и более поздних версий, работающих на оборудовании Microsoft Direct3D Уровня 9. (См. требования в улучшения производительности отрисовки Direct3D.) Для более расширенного оборудования драйверы должны реализовать функцию SetMarkerMode.

Синтаксис

PFND3DDDI_SETMARKERMODE Pfnd3dddiSetmarkermode;

HRESULT Pfnd3dddiSetmarkermode(
  HANDLE hDevice,
  D3DDDI_MARKERTYPE Type,
  UINT Flags
)
{...}

Параметры

hDevice

Дескриптор устройства отображения (графический контекст).

Type

Значение из перечисления D3DDDI_MARKERTYPE, указывающее тип события маркера, которое должен поддерживать драйвер.

Flags

Значение UINT, указывающее, должен ли драйвер предоставлять пользовательские сведения в буферах команд. Если задано значение D3DDDI_SETMARKERMODE_CUSTOMDRIVEREVENTS, драйвер должен аномировать и инструментировать буферы команд с пользовательскими сведениями о событии. В противном случае драйвер не должен замечать буферы команд.

Заметка может быть в виде текстовой строки в языковом стандарте English-US или в виде значения индекса в расположение в строковой таблице. Для последнего параметра драйвер также должен реализовать функцию, описывающую строки, которые указывают значения индекса.

Возвращаемое значение

Возвращает S_OK или соответствующий результат ошибки, если функция не завершена успешно.

Замечания

Следуйте этим рекомендациям при настройке событий маркера профиля в драйвере пользовательского режима, указанном в типе D3DDDIMT_PROFILE:

  1. Используйте упрощенное инструментирование, которое не создает сильную корреляцию с границами графических команд.
  2. Драйвер должен иметь возможность выборки метки времени GPU в конце графического конвейера.
  3. Не используйте команды выборки, которые размещают высокую производительность в графическом конвейере, например команды ожидания ожидания бездействия. Чтобы иметь возможность инструментировать события маркера типа профиля, драйверу не нужно удалять конвейер или кэши.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows 8.1,WDDM 1.3 и более поздних версий
минимальный поддерживаемый сервер Windows Server 2012 R2
целевая платформа Настольный
заголовка d3dumddi.h (include D3d10umddi.h)

См. также

D3DDDI_MARKERTYPE

SetMarkerMode