visual studio plugin dottrace dotmemory c# .net profiling profiler

c# - plugin - visual studio performance profiler



¿Algun perfil de perfil C decente por ahí? (20)

El impresionante NDepend de Patrick Smacchia es excelente para proporcionar análisis estáticos.

Recomendaría NDepend para el análisis estático, pero ten en cuenta que probablemente necesites dejar de lado un día o dos para analizar realmente la gran cantidad de información que proporciona, así como averiguar qué significan realmente todas las estadísticas en términos de tu codigo.

Necesito un perfilador de C #.

Aunque no soy reacio a pagar por uno, lo ideal es algo gratuito o, al menos, con una versión de prueba, ya que lleva tiempo crear una orden de compra.

¿Alguna recomendación?


¿Cuál es tu objetivo?

¿Es su objetivo localizar declaraciones específicas y tener una idea aproximada de lo que están contribuyendo a su tiempo de ejecución total, para que pueda encontrar formas de hacerlo de manera diferente?

Por eso, juro por este método.


AQTime (perf y memoria) o ANTS (perfilador de rendimiento v4 o perfilador de memoria v5 beta) aquí.


Actualmente no los utilices, un amigo de los elogios sobre el perfilador de hormigas. Sé que es un producto de pago no muy seguro de lo caro. Si contratas un MVP, podrías aprovechar eso para obtener una licencia gratis.


Aunque no es muy bueno para perfilar el uso de la memoria, el generador de perfiles incluido en algunas versiones de Visual Studio hace un muy buen trabajo al perfilar la velocidad de ejecución.


El generador de perfiles EQATEC es muy bueno y es completamente gratuito. Es fácil de configurar y usar, y no parece agregar demasiada sobrecarga a la aplicación. Empecé a usarlo hoy y ya he encontrado un par de cuellos de botella que de otro modo no hubiera detectado.


El perfilador de EQATEC hizo el trabajo aquí.


Encontré .NET Memory Profiler ayer, y debo decir que estoy muy impresionado.
Voy a pedir mi licencia hoy.


Es interesante que nadie mencione que hay una en las versiones de gama alta de Visual Studio: siempre he encontrado que es lo suficientemente bueno para los perfiles de ejecución. Para el perfil de memoria utilizo Memory Profiler que ya se ha mencionado, pero no es lo que generalmente describiría como ''un generador de perfiles''.

¿Qué tipo de perfil intentabas hacer?


He tenido buena suerte con el perfilador de memoria .NET


He usado AQtime y nunca me ha defraudado. Estoy seguro de que hay una versión de prueba.


La versión actual de SharpDevelop (3.1.1) tiene un buen perfilador integrado. Es bastante rápido y se integra muy bien en el IDE de SharpDevelop y su corredor NUnit. Los resultados se muestran en un estilo de árbol / lista flexible (use LINQ para crear su propia selección). Doublecliking el método mostrado salta directamente en el código fuente.


Mantengo una lista completa de perfiladores para .NET en SharpToolbox.com.

Allí encontrará las herramientas sugeridas y más, cada una con una breve descripción de lo que propone.


Puedes probar lo siguiente:

Editar: Nprof ha sido reemplazado por SlimTune y funciona con aplicaciones .Net 4.0


Seré el segundo profiler ANTS de la puerta roja . Lo he usado para rastrear algunos problemas de rendimiento realmente preocupantes y fue muy fácil de usar (curva de aprendizaje baja) y presentaba datos agradables y detallados de una manera que era fácil de entender. El precio vale la pena, pero no es gratis ...



Usamos .NET Memory Profiler . Es un poco feo pero muy útil para encontrar referencias colgantes.

Inicialmente probé el perfil ANTS de Red Gate, que es muy sexy, pero desde el punto de vista de pérdida de memoria es una mierda por las siguientes razones:

1) Es ridículamente lento. Tardaba media hora en poner la aplicación en un estado para comenzar a grabar (tarda 20 segundos sin puerta roja).

2) Red Gate necesita ejecutar su propia herramienta en su propia herramienta. ¡Estaba usando 900MB de memoria para cuando terminé dos instantáneas! Luego se estrelló :(

Sin embargo, el componente de tiempo de Red Gate ANTS fue impresionante. Simplemente no se moleste con el generador de perfiles de memoria, a menos que esté tratando con una aplicación trivial (huella pequeña).



Utilicé el generador de perfiles de hormigas en un gran proyecto de c # hace un año y medio. Realmente funcionó muy bien por lo que cuesta, e incluso superó a algunos de los competidores más caros.

Calcula el costo con casi una línea por resolución de línea.


dotTrace de JetBrains es ampliamente utilizado.

El impresionante NDepend de Patrick Smacchia es excelente para proporcionar análisis estáticos.