C ++ Code Profiler
-
04-07-2019 - |
Вопрос
Кто-нибудь может порекомендовать хороший профилировщик кода для C ++?
Я столкнулся с Shiny - хорошо? http://sourceforge.net/projects/shinyprofiler/
Решение
Callgrind для Unix / Linux
DevPartner для Windows
Другие советы
Не специфично для C ++, но программное обеспечение AMD CodeAnalyst является бесплатным и полнофункциональным.
http://developer.amd.com/cpu/codeanalyst/ codeanalystwindows / Страницы / default.aspx
Gprof , если вы используете gcc. Это может быть не удобно для пользователя, но все же полезно.
Возможно, вас заинтересует Intel VTune . Полезно и позволяет собирать низкоуровневые события, такие как пропуски кэша, что очень помогает при настройке.
Quantify (часть пакета IBM / Rational PurifyPlus) - очень хороший профилировщик, но не совсем дешевый. Он также доступен на нескольких платформах - я использовал его на Solaris, Windows и Linux.
Зависит от того, что вам нужно сделать:
<Ол>Это не одно и то же.
Для 1 используйте один из рекомендованных профилировщиков.
Для 2 профайлер, которого я предпочитаю, - тот, который у вас уже есть:
http://www.wikihow.com/Optimize-Your-Program%27s- Производительность
Чтобы узнать, как это происходит, проверьте это. р>
Для C ++, как для C # и любого языка, который поощряет уровни абстракции, эти уровни могут быть или не быть хорошими с точки зрения разработки программного обеспечения, но они могут снизить производительность. Каждый вызов метода является обходом при выполнении вашей программы, и стиль побуждает вас вкладывать эти вещи, иногда без необходимости. Кроме того, стиль не рекомендует вам знать или заботиться о том, что происходит внутри них. Вы можете обнаружить, что они создают и удаляют объекты снизу со скоростью и уровнем общности, намного превышающими то, что действительно требуется вашему приложению.
AQtime (для Windows)
Если вы используете Premium версию VS 2010, вы получите профилировщик с ней.
Я также использовал несколько других бесплатных, но они не сравнимы с кораблями MS. Полезно как второе мнение, хотя.
Если у вас есть доступ к Mac, я рекомендую использовать Shark из ЧУД инструменты. Р>
Вы можете использовать анализатор, который установлен в Sun Studio 12 в Linux или Solaris. Это & # 347; свободно. http://developers.sun.com/sunstudio/index.jsp
Если вы не можете найти DevPartner, это потому, что мы перешли под новое владение. Проверьте нас на веб-сайте Micro Focus: http: // www. microfocus.com/products/micro-focus-developer/devpartner/index.aspx . Бесстыдная вилка: я работаю в команде DevPartner Наши долгожданные 64-разрядные версии профилировщиков BoundsChecker и C ++ /. NET будут выпущены 4 февраля 2011 г. Мы изменили нашу модель ценообразования, чтобы вы могли выбрать либо весь комплект, либо только профилировщик производительности, если это то, что вам нужно. Пожалуйста, ознакомьтесь с новой версией DPS 10.5, когда она выйдет в эфир!