Показать сообщение отдельно
Старый 04.09.2017, 10:22   #14  
belugin is offline
belugin
Участник
Аватар для belugin
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,622 / 2925 (107) +++++++++
Регистрация: 16.01.2004
Записей в блоге: 5
1) Скачайте PerfView с сайта MS
2) Запустите PerfView (см также https://channel9.msdn.com/Series/PerfView-Tutorial)
3) File \ Set Symbol Path, Use MS Symbol server
4) Collect \ Collect
5) Circullar MB = 20000
6) Advanced \ No V.3 Symbols

Дальше запускаете процесс который вызывает использование CPU, если он работает, то просто жмете Start collection и ждете минуты 2.
Дальше Stop collection

Подождать пока закончит обработку трейса можо открывать, выбирать batch.exe и анализировать top down или bottom up (там надо еще группировку настроить под интересную задачу)

Например я сделал такую mpengine!{%}->mpe.$1;!=>Other

Так как у меня процессор жрал Defender (это значит, что сгруппировать все функции mpengine и токи входа во все остальное в группу Other ) на картинке видно, что ~20% процессора выедает движок регулярных выражений

Можно сделать mpengine!{%}->mpe.$1;!->Other - тогда "прочее" будет сгруппировано в один пункт и его можно размазать по тому, кто его потребляет (Правая кнопка и Fold \ Fold item) на картинке видно, что немного увеличился процент regex за счет того что в него вошло "прочее" которое из него вызывалось
Миниатюры
Нажмите на изображение для увеличения
Название: snip_20170904101701.png
Просмотров: 352
Размер:	215.4 Кб
ID:	11619   Нажмите на изображение для увеличения
Название: snip_20170904102212.jpg
Просмотров: 335
Размер:	336.4 Кб
ID:	11620  


Последний раз редактировалось belugin; 04.09.2017 в 10:34.
За это сообщение автора поблагодарили: mazzy (2), Ace of Database (3), MarinaAX (1).