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


Ведение журнала драйверов в пользовательском режиме

В этой статье представлен обзор ведения журнала драйверов в режиме пользователя в WDDM.

Чтобы получить более эффективную разбивку памяти видео, драйвер WDDM должен предоставить связь между ресурсами Direct3D и выделением памяти видео. Начиная с Windows 8, эта возможность возможна с добавлением интерфейсов ведения журнала драйвера пользовательского режима (UMD). С помощью этих сведений, добавленных в трассировку событий для Windows (ETW), можно просмотреть выделение памяти видео с точки зрения API.

Требования:

  • Минимальная версия WDDM: 1.2
  • Минимальная версия Windows: 8
  • Реализация драйвера — только полная графика и отрисовка: обязательный
  • Требования и тесты WHLK : Device.Graphics;UMDLogging

Для разработчиков ведение журнала UMD может уточнить затраты на память, такие как внутренняя фрагментация или эффект быстрого удаления поверхностей. Это позволяет Корпорации Майкрософт лучше работать с клиентами и партнерами, которые предоставляют трассировку для анализа проблем с производительностью. В частности, эта функция может помочь преодолеть общую блокировку при изучении проблем с производительностью, связанных с памятью: приложение использует слишком большой рабочий набор, но вы не можете определить, какие ресурсы API или вызовы вызывают проблему.

Драйвер должен предоставлять связь между ресурсами Direct3D и выделением памяти видео, реализуя интерфейсы UMD ETW. В дополнение к событиям ведения журнала драйвер должен иметь возможность сообщать обо всех существующих сопоставлениях между ресурсами и выделениями в любой момент времени.

Ведение журнала распределения драйверов UMD DDI

DDI ведения журнала выделения UMD предоставляет события в объекте трассировки на уровне ядра ETW, показывающие, какие ресурсы API связаны с выделением ядра в подсистеме ядра DirectX (Dxgkrnl.sys).

DDI можно использовать для:

  • Обнаружение фрагментации внутренней памяти или влияние поверхностей, которые быстро удаляются.
  • Укажите более подробные сведения о трассировки для Майкрософт, чтобы помочь вам определить проблемы с производительностью.
  • Помогите определить, когда ресурсы или вызовы API приложения вызывают слишком большой рабочий набор памяти.

Используйте эти функции, перечисление и структуру из заголовка umdprovider.h для регистрации событий в UMD:

См. также заголовок umdetw.h .

Сертификационные требования к оборудованию

Сведения о требованиях, которые должны соответствовать аппаратным устройствам при реализации этой функции, см . в документации по WHLK на Device.Graphics — UMDLogging.

Ознакомьтесь с функциями WDDM 1.2, чтобы ознакомиться с функциями, добавленными в Windows 8.