Получение статистики по процессорам

10

Как получить текущее использование процессора для каждого потока в конкретном приложении? Можно ли получить эту информацию откуда-то или с помощью какого-либо инструмента?

dabest1
источник

Ответы:

8

Для быстрого ответа используйте Process Explorer SysInternal . Дважды щелкните по процессу, чтобы открыть диалог деталей. На вкладке «Потоки» представлен сортируемый список всех потоков, включая дельту переключателя контекста и время процессора.

Ричард
источник
Ранее я использовал Process Explorer, но не увидел там столбец ЦП, потому что он был слишком узким, и в качестве заголовка столбца была видна только стрелка сортировки.
dabest1
7

Perfmon (Performance Monitor) должен предоставить вам необходимую информацию.

Следующее предполагает Windows 2000, XP или Server 2003. Я не проверял, но я думаю, что монитор производительности немного отличается в Vista, Windows 7 и Server 2008.

Чтобы запустить системный монитор, выберите «Пуск»> «Панель управления»> «Администрирование»> «Производительность».

Чтобы добавить график для каждой нити приложения, щелкните правой кнопкой мыши график и выберите «Свойства». Возможно, вы захотите удалить любые из настроек по умолчанию, чтобы получить более чистый график.

Нажмите кнопку «Добавить ...» и убедитесь, что установлен флажок «Использовать локальные компьютерные счетчики» (если только вы не хотите отслеживать другой сервер, в этом случае выберите этот вариант).

В разделе «Объект исполнения» выберите «Тема»

Выберите счетчик «% Processor Time», а затем выберите все потоки, которые вы хотите отслеживать (удерживая нажатой клавишу «Ctrl», выберите несколько). Нажмите «Добавить», а затем «Закрыть».

Вернувшись в свойства, вы можете настроить график по своему усмотрению, назначив цвета, узоры и т. Д. Нажмите OK.

Возможно, вам придется начать построение графика, если вы это сделаете, а затем щелкните красный знак СТОП, чтобы он не был включен, и запустите график.

Марк Хендерсон
источник
+1, за исключением комментария WMI в начале, так как он не имеет ничего общего с остальной частью поста. То, что было упомянуто, довольно похоже на Vista и 2008. Наконец, вы также можете запустить Perfmon, запустив perfmon.msc
DougN
Тьфу, прости, я перепутал свои условия. Я хотел сказать Perfmon. Я исправлю это сейчас.
Марк Хендерсон
1

Монитор процессов (sysinternals)

Я думаю, что ProcessMonitor от Sysinternals (недавно приобретенный Microsoft), вероятно, будет работать.

Process Monitor - это расширенный инструмент мониторинга для Windows, который в режиме реального времени показывает файловую систему, реестр и активность процессов / потоков. Он сочетает в себе функции двух устаревших утилит Sysinternals, Filemon и Regmon, и добавляет обширный список улучшений, включая расширенную и неразрушающую фильтрацию, всесторонние свойства событий, такие как идентификаторы сеансов и имена пользователей, надежную информацию о процессах, полные потоки с интегрированной поддержкой символов для каждой операции одновременное ведение журнала в файл и многое другое. Его уникально мощные функции сделают Process Monitor основной утилитой для устранения неполадок в вашей системе и поиска вредоносных программ.

Вот ссылка:

http://technet.microsoft.com/en-us/sysinternals/bb896645.aspx

KPWINC
источник
Спасибо за ваше предложение. Ваш ответ правильный, но то, что помогло мне найти загрузку ЦП на поток в Process Explorer, было ответом, который я выбрал Ричардом.
dabest1
0

Вы можете использовать встроенный монитор производительности Windows, просто наберите perfmon в начале, запустите. На Perfmon нажмите знак плюс, выберите процесс, выберите процесс, затем выберите то, что вы хотите увидеть. вернуться к основам!

НАСА
источник