2009-12-21 24 views
7

Revisando todas las preguntas sobre las herramientas de creación de perfiles, me sorprendí al descubrir VTune by Intel que no había escuchado antes. A $ 700, es incluso más caro que AQTime.¿Vale la pena considerar VTune para Delphi?

Pero antes de tomar la decisión de pagar mucho dinero por AQTime, ¿alguien ha usado VTune para Delphi y, de ser así, cree que tiene algún beneficio que lo haga una mejor opción que AQTime y the other profiling tools for Delphi that are out there?

+0

¿Sintoniza una gran cantidad de ensamblador SSE? –

+0

No, pero sí lo veo y tengo mucha experiencia en la optimización de bajo nivel. – lkessler

Respuesta

5

Puede descargar 30 días vtune trial y pruébelo usted mismo.

He usado AQTime y VTune.

VTune es bueno si desea probar la aplicación multiproceso - me ayuda a encontrar bloqueos en el administrador de memoria que ralentizan mi parte de aplicación multiproceso.

La diferencia de Secend es que VTune es un generador de perfiles de muestra y AQTime es perfilador de instrumentos. Ambos tienen puntos fuertes y débiles, pero yo personalmente prefiero el instrumento uno. Con el perfilador de instrumentos se obtiene exactamente información sobre cuántas veces llamaron a su función, todos los llamantes de este procedimiento, etc. con costo de resultados de tiempo imprecisos. Los perfiladores de instrumentación cambian el código de ejecución del procesador, por lo que las predicciones de bifurcación y caché funcionan de forma diferente. el trabajo de la aplicación es lento.

Pero lo más importante es la GUI y aquí gana AQTime. Es una aplicación potente pero muy fácil de usar. VTune es bastante diferente. Perdí demasiado tiempo para encontrar el comando correcto en VTune. GUI es muy complicado

Así que a excepción de multihilo he usado AQTime.

+2

Creo que AQTime ofrece tanto instrumentación como muestreo. Lo que verificaría sobre VTune es su compatibilidad con el formato de salida de depuración Borland TD32. –

+0

Según los PDF, VTUNE tiene soporte ZERO para el formato de depuración TD32. Entonces, ¿puede VTune incluso darle una pila de llamadas con la información del número de línea para un ejecutable Delphi? Mencionan C#, C/C++ y Visual Basic directamente, pero no se menciona a delphi ni a ninguna otra cosa. –

+1

Warren: De acuerdo con esto: http://software.intel.com/en-us/articles/intel-vtune-performance-analyzer-for-windows-turning-on-debug-symbols-for-borland-delphi-enterprise -version-60/VTune TIENE soporte TD32. – lkessler

8

VTune puede leer contadores de CPU de bajo nivel, como predicción de bifurcación, fallas de caché, etc. Lo usé para descubrir por qué TopMM (administrador de memoria de escalamiento multiproceso) era muy lento en mi CPU Hyperthreading. Había algo acerca de aliasing de caché de memoria de 64 kb. Por lo tanto, brinda más información en el departamento sobre cómo funciona realmente en una CPU y por qué algo es lento debido a fallas de la memoria caché, etc. Para la optimización real (último%) Yo usaría ambas, para la optimización normal use AQ u otra (como mi asmprofiler :-))

+1

André: Si pudieras simplemente agregar información de nivel de línea en asmprofiler, sería todo lo que necesito. – lkessler