Мне нужен профилировщик C #.
Хотя я не прочь заплатить за него, что-то бесплатное или, по крайней мере, с пробной версией было бы идеальным, поскольку для создания заказа на покупку требуется время.
Какие-нибудь рекомендации?
Мне нужен профилировщик C #.
Хотя я не прочь заплатить за него, что-то бесплатное или, по крайней мере, с пробной версией было бы идеальным, поскольку для создания заказа на покупку требуется время.
Какие-нибудь рекомендации?
Вы можете попробовать следующее:
Изменить: 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 Патрика Смаччиа отлично подходит для статического анализа.
Я бы настоятельно рекомендовал NDepend для статического анализа, но имейте в виду, что вам, вероятно, потребуется выделить день или два, чтобы на самом деле проанализировать грузовик с информацией, которую он предоставляет, а также выяснить, что на самом деле означает вся статистика с точки зрения ваш код.
Мне повезло с профилировщиком памяти .NET
Профайлер EQATEC сделал здесь свою работу.
Текущая версия SharpDevelop (3.1.1) имеет удобный интегрированный профилировщик. Это довольно быстро и очень хорошо интегрируется в среду разработки SharpDevelop и ее средство запуска NUnit. Результаты отображаются в гибком стиле «дерево / список» (используйте LINQ для создания собственного выбора). Двойной щелчок по отображаемому методу позволяет перейти непосредственно к исходному коду.
В настоящее время ими не пользуюсь, мой приятель восторженно отзывается о профайлере Ants. Я знаю, что это платный продукт, не уверен, насколько он дорог. Если у вас есть штат MVP, вы можете воспользоваться этим, чтобы получить бесплатную лицензию.
AQTime (и перфоманс, и память) или ANTS (профилировщик производительности v4 или бета-профилировщик памяти v5) здесь.
Вчера я нашел .NET Memory Profiler и должен сказать, что он меня очень впечатлил.
Я собираюсь заказать лицензию сегодня.
Профилировщик, включенный в некоторые версии Visual Studio, не очень хорошо справляется с профилированием использования памяти, но очень хорошо справляется со скоростью выполнения профилирования.
Какая у тебя цель?
Ваша цель - найти определенные операторы и получить приблизительное представление о том, какой вклад они вносят в общее время выполнения, чтобы вы могли найти способы делать их по-другому?
Для этого я клянусь этим методом.