Какие инструменты вы используете для профилирования (родного) C ++ в Windows? - PullRequest
4 голосов
/ 25 ноября 2008

Как программисты Window описывают свой родной код C ++? В Unix / Linux у вас есть gprof [спасибо Evan] & valgrind (я лично использовал этот, хотя это не настоящий профилировщик), и недавно я работаю на Mac и Solaris, что означает, что я перешел на dTrace , Теперь, когда мне раньше приходилось профилировать в Windows, как и на моей предыдущей работе, я использовал Intel vtune, который великолепен, но коммерческий, и у меня нет лицензии для частного использования, поэтому я ' Мне интересно, какой стандартный (бесплатный - лучше) инструмент, которым обычно пользуются Windows-программисты?

Заранее спасибо

Ответы [ 3 ]

8 голосов
/ 25 ноября 2008

Вам следует попробовать Xperf - это новый системный инструмент для повышения производительности, который может перейти к конкретному приложению и узнать, что именно он делает внутри себя, а также что он запрашивает у ОС. *

Он свободно доступен в Windows SDK для Windows Server 2008 и .NET Framework 3.5 ISO :

  1. Установите SDK, загрузив ISO-образ или используя веб-интерфейс Установщик.
  2. Найдите MSI xperf в каталоге bin для SDK. Будет назван xperf_x86.msi, xperf_x64.msi или xperf_ia64.msi, в зависимости от архитектура, для которой вы устанавливаете SDK.
  3. Затем вы можете установить инструменты xperf непосредственно из MSI или скопировать MSI-файл xperf в другое место и установить его оттуда. За Например, вы можете сохранить файлы MSI на USB-ключ.

Источник: блог «Свиньи могут летать» на MSDN.com

Только что проверил, что xperf msi не будет установлен, кроме как на Windows Vista или Windows 2007.

-Adam

3 голосов
/ 25 ноября 2008

Я получил AMD Code Analyst . Это бесплатно, и вам не нужен процессор AMD;)

Это немного по сравнению с чем-то вроде VTune от Intel, но цена подходящая.

1 голос
/ 19 октября 2009

Эта ссылка говорит о Linux, но я использую ту же технику в MSVC и в C #.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...