функция обратного вызова 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:
- Используйте упрощенное инструментирование, которое не создает сильную корреляцию с границами графических команд.
- Драйвер должен иметь возможность выборки метки времени GPU в конце графического конвейера.
- Не используйте команды выборки, которые размещают высокую производительность в графическом конвейере, например команды ожидания ожидания бездействия. Чтобы иметь возможность инструментировать события маркера типа профиля, драйверу не нужно удалять конвейер или кэши.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows 8.1,WDDM 1.3 и более поздних версий |
минимальный поддерживаемый сервер | Windows Server 2012 R2 |
целевая платформа | Настольный |
заголовка | d3dumddi.h (include D3d10umddi.h) |