Хотя я не прочь заплатить за один, что-то бесплатное или, по крайней мере, с пробной версией было бы идеальным, поскольку для создания заказа на покупку требуется время.
nprof - это только я думаю .Net 1.1. Если вы можете скомпилировать в .Net 1.1, может быть полезно профилировать его, а затем перекомпилировать в .Net 2 для выпуска. Однако это невозможно, если вы начнете использовать функции .Net2, такие как универсальные типы и типы, допускающие значение NULL.
redcalx
1
Согласитесь с Мэтью, ProfileSharp ужасен, не мог заставить его профилировать даже самый простой exe из командной строки. Не тратьте время зря
Майкл Даусманн,
Похоже, что в последнее время разработка nprof началась.
Брайан Ортис,
1
Я использовал .Net Memory Profiler, чтобы найти утечку памяти; это очень хорошо. Это моя печать одобрения!
Кот-Сайлон,
40
Полтора года назад я использовал профилировщик Ants в большом проекте на C #. Он действительно работал очень хорошо с такой ценой и даже превосходил некоторых более дорогих конкурентов.
Он рассчитывает стоимость практически с построчным разрешением.
EQATEC профайлер очень хорошо , и является полностью бесплатным. Его легко настроить и использовать, и, похоже, он не добавляет слишком много накладных расходов приложению. Я только начал его использовать сегодня и уже нашел пару узких мест, которые иначе бы не заметил.
Не бесплатно для коммерческой лицензии (но все же дешево, 200 долларов).
mhenry1384
Да, похоже, они изменили лицензию на последнюю версию и начали взимать плату за коммерческое использование. Я все равно очень рекомендую это.
HullCitySteve
3
Обновление - похоже, они снова изменили условия лицензии, чтобы сделать его бесплатным для коммерческого использования для стандартных приложений .NET (но не для CF или Silverlight)
HullCitySteve
3
Условия лицензии снова изменились в версии 3.6: теперь она бесплатна для всех платформ, включая CF и Silverlight, с ограничением на количество DLL, которые можно инструментировать за один сеанс.
Ричард Фламсхольт, 02
3
Больше не является бесплатным и был куплен Telerik :(
Интересно, что никто не упоминает о том, что он есть в старших версиях Visual Studio - я всегда считал, что этого достаточно для профилирования выполнения. Для профилирования памяти я использую Memory Profiler, о котором уже упоминалось, но это не то, что я обычно называю «профилировщиком».
Мы используем .NET Memory Profiler . Это некрасиво, но очень полезно для поиска висячих ссылок.
Изначально я попробовал профайлер ANTS от Red Gate, который очень привлекателен, но с точки зрения утечки памяти он отстой по следующим причинам:
1) Это до смешного медленно. На то, чтобы приложение перешло в состояние для начала записи, ушло полчаса (без красных ворот это занимает 20 секунд).
2) Red Gate необходимо запускать собственный инструмент на собственном инструменте. К тому моменту, когда я сделал два снимка, он использовал 900 МБ памяти! Затем он разбился :(
Однако временная составляющая Red Gate ANTS была впечатляющей. Только не беспокойтесь о профилировщике памяти, если только вы не имеете дело с тривиальным (небольшим) приложением.
AQTime имеет огромное преимущество перед ANT в том, что он поддерживает неуправляемый код.
Рик Минерих
3
Я буду вторым профайлером ANTS Red Gate . Я использовал его, чтобы отследить некоторые действительно тревожные проблемы с производительностью, и он был чрезвычайно простым в использовании (низкая кривая обучения) и предоставлял хорошие, подробные данные таким образом, чтобы их было легко понять. Ценник того стоит, но не бесплатно ...
Удивительный NDepend Патрика Смаччиа отлично подходит для статического анализа.
Я бы настоятельно рекомендовал NDepend для статического анализа, но имейте в виду, что вам, вероятно, потребуется выделить день или два, чтобы на самом деле проанализировать грузовик информации, которую он предоставляет, а также выяснить, что на самом деле означает вся статистика с точки зрения ваш код.
Текущая версия SharpDevelop (3.1.1) имеет хороший интегрированный профилировщик. Это довольно быстро и очень хорошо интегрируется в среду разработки SharpDevelop и ее средство запуска NUnit. Результаты отображаются в гибком стиле «дерево / список» (используйте LINQ для создания собственного выбора). Двойной щелчок по отображаемому методу позволяет перейти непосредственно к исходному коду.
В настоящее время не пользуюсь ими, мой приятель восторженно отзывается о профайлере Ants. Я знаю, что это платный продукт, не уверен, насколько он дорог. Если у вас есть MVP, вы можете воспользоваться этим, чтобы получить бесплатную лицензию.
не могли бы вы подробнее рассказать обо всем, что касается MVP? спасибо,
kay.one
MVP получают лицензию на продукты Redgate бесплатно, это лазейка, в которую вы попадете, если в вашей команде есть люди, которые являются MVP, поэтому стоимость не проблема.
DevelopingChris
У вас есть ссылка, описывающая эту лазейку и способы ее использования?
Кейт Сирмонс,
1
AQTime (и перфоманс, и память) или ANTS (профилировщик производительности v4 или бета-профилировщик памяти v5) здесь.
Профилировщик, включенный в некоторые версии Visual Studio, не очень хорошо справляется с профилированием использования памяти, но очень хорошо справляется со скоростью выполнения профилирования.
Один из способов доступа к профилировщику VS2010 - после загрузки решения в меню «Отладка» найти «Начать анализ производительности». Подробная информация о его возможностях находится на msdn.microsoft.com/query/…
ShawnFeatherly,
0
Какая у тебя цель?
Ваша цель - найти определенные операторы и получить приблизительное представление о том, какой вклад они вносят в общее время выполнения, чтобы вы могли найти способы сделать их по-другому?
Ответы:
Вы можете попробовать следующее:
Изменить: Nprof был заменен на SlimTune и работает с приложениями .Net 4.0
источник
Полтора года назад я использовал профилировщик Ants в большом проекте на C #. Он действительно работал очень хорошо с такой ценой и даже превосходил некоторых более дорогих конкурентов.
Он рассчитывает стоимость практически с построчным разрешением.
источник
EQATEC профайлер очень хорошо , и является полностью бесплатным. Его легко настроить и использовать, и, похоже, он не добавляет слишком много накладных расходов приложению. Я только начал его использовать сегодня и уже нашел пару узких мест, которые иначе бы не заметил.
источник
dotTrace от JetBrains широко используется.
Удивительный NDepend Патрика Смаччиа отлично подходит для статического анализа.
источник
Я поддерживаю полный список профилировщиков для .NET на SharpToolbox.com.
Там вы найдете предлагаемые здесь инструменты и многое другое, каждый с кратким описанием того, что он предлагает.
источник
Интересно, что никто не упоминает о том, что он есть в старших версиях Visual Studio - я всегда считал, что этого достаточно для профилирования выполнения. Для профилирования памяти я использую Memory Profiler, о котором уже упоминалось, но это не то, что я обычно называю «профилировщиком».
Какого рода профилирование вы пытались выполнить?
источник
Там, где я работаю, мы используем профайлер Ants . Он дает очень подробную информацию в простой форме.
источник
Мы используем .NET Memory Profiler . Это некрасиво, но очень полезно для поиска висячих ссылок.
Изначально я попробовал профайлер ANTS от Red Gate, который очень привлекателен, но с точки зрения утечки памяти он отстой по следующим причинам:
1) Это до смешного медленно. На то, чтобы приложение перешло в состояние для начала записи, ушло полчаса (без красных ворот это занимает 20 секунд).
2) Red Gate необходимо запускать собственный инструмент на собственном инструменте. К тому моменту, когда я сделал два снимка, он использовал 900 МБ памяти! Затем он разбился :(
Однако временная составляющая Red Gate ANTS была впечатляющей. Только не беспокойтесь о профилировщике памяти, если только вы не имеете дело с тривиальным (небольшим) приложением.
источник
Я использовал AQtime, и он меня ни разу не подводил. Я уверен, что есть пробная версия.
источник
Я буду вторым профайлером ANTS Red Gate . Я использовал его, чтобы отследить некоторые действительно тревожные проблемы с производительностью, и он был чрезвычайно простым в использовании (низкая кривая обучения) и предоставлял хорошие, подробные данные таким образом, чтобы их было легко понять. Ценник того стоит, но не бесплатно ...
источник
Я бы настоятельно рекомендовал NDepend для статического анализа, но имейте в виду, что вам, вероятно, потребуется выделить день или два, чтобы на самом деле проанализировать грузовик информации, которую он предоставляет, а также выяснить, что на самом деле означает вся статистика с точки зрения ваш код.
источник
Мне повезло с профилировщиком памяти .NET
источник
Профайлер EQATEC сделал здесь свою работу.
источник
Текущая версия SharpDevelop (3.1.1) имеет хороший интегрированный профилировщик. Это довольно быстро и очень хорошо интегрируется в среду разработки SharpDevelop и ее средство запуска NUnit. Результаты отображаются в гибком стиле «дерево / список» (используйте LINQ для создания собственного выбора). Двойной щелчок по отображаемому методу позволяет перейти непосредственно к исходному коду.
источник
В настоящее время не пользуюсь ими, мой приятель восторженно отзывается о профайлере Ants. Я знаю, что это платный продукт, не уверен, насколько он дорог. Если у вас есть MVP, вы можете воспользоваться этим, чтобы получить бесплатную лицензию.
источник
AQTime (и перфоманс, и память) или ANTS (профилировщик производительности v4 или бета-профилировщик памяти v5) здесь.
источник
Вчера я нашел .NET Memory Profiler и должен сказать, что он меня очень впечатлил.
Я собираюсь заказать лицензию сегодня.
источник
Профилировщик, включенный в некоторые версии Visual Studio, не очень хорошо справляется с профилированием использования памяти, но очень хорошо справляется со скоростью выполнения профилирования.
источник
Какая у тебя цель?
Ваша цель - найти определенные операторы и получить приблизительное представление о том, какой вклад они вносят в общее время выполнения, чтобы вы могли найти способы сделать их по-другому?
В этом я клянусь этим методом.
источник