Счетчики производительности perfmon основаны на той же вещи, что и события ETW, используемые xperf?

Недавно я познакомился с perfmon и xperf. Perfmon использует счетчики производительности, а xperf использует ETW (трассировка событий для окон). У Perfmon есть объекты, которые предоставляют данные, тогда как xperf использует группы "провайдеров". Как новичок в этой области, я спрашиваю, может ли кто-нибудь сказать мне, действительно ли счетчики производительности, используемые perfmon, на самом деле основаны на том же самом, что и события ETW, используемые xperf, и если да, могли бы вы прояснить соединение. Если они не основаны на одном и том же, не могли бы вы объяснить, чем они отличаются?

2 ответа

Решение

Счетчики производительности и ETW - это две разные вещи, они не имеют общей инфраструктуры.

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

Трассировка событий для Windows (ETW) - это эффективное средство трассировки на уровне ядра, которое позволяет записывать события ядра или приложения в файл журнала.

Оба они могут быть использованы для анализа производительности, но ETW предоставляет контрольный журнал поведения внутри приложения с течением времени (например, традиционный файл журнала в режиме пользователя), тогда как PerfMon предоставляет представление либо текущей статистики в приложении ("текущая длина очереди").) или агрегированные данные за время существования (например, "средняя пропускная способность", "общее количество отправленных байтов").

Казалось бы, на основе этого документа, начиная с Vista+, счетчики производительности имеют фасад ETW, поэтому их можно использовать точно так же, как и ETW.

Новая библиотека счетчиков производительности (PERFLIB версии 2.0), включенная в Windows Vista®, предлагает разработчику ряд преимуществ, в том числе:

Стандартный механизм межпроцессного взаимодействия (IPC) между поставщиком и потребителем, основанный на уведомлении Event Tracing for Windows (ETW) и приводящий к упрощенной разработке и более унифицированному и надежному коду.

Другие вопросы по тегам