Lista de herramientas de análisis de rendimiento
Contenido keyboard_arrow_down
Esta es una lista de herramientas de análisis de rendimiento para su uso en el desarrollo de software.Las siguientes herramientas funcionan con archivos de registro generados por varios sistemas.Las siguientes herramientas funcionan con varios idiomas o binarios.
Objetivo general, idioma independiente
- tiempo (Unix) - se puede utilizar para determinar el tiempo de ejecución de un programa, contando por separado tiempo de usuario vs. tiempo del sistema, y tiempo de CPU vs. hora del reloj.
- timem (Unix) - se puede utilizar para determinar el tiempo de pared, tiempo de CPU y utilización de CPU similar al tiempo (Unix) pero admite numerosas extensiones.
- Soporta reportar el tamaño máximo de conjunto residente, fallas importantes y menores de página, interruptores prioritarios y de contexto voluntario a través de la getrusage.
- Apoya el muestreo procfs en sistemas de soporte para reportar métricas como el tamaño de conjunto residente basado en la página, tamaño de memoria virtual, lectura-bytes y escritura-bytes, etc.
- Admite la recogida de contadores de hardware cuando se construye con soporte PAPI.
Idiomas múltiples
| Name/manufacturer | OS | Compilador/idioma | Lo que hace | Licencia |
|---|---|---|---|---|
| AppDynamics by Cisco | Linux, Windows, iOS, Android, Azure, AWS, AIX | .NET, Java, PHP, HTML5, ObjectiveC/iOS, Java/Android, C/C+++, Apache, Nginx, Cassandra, DataBases | Ver Gestión de Desempeño de Aplicaciones. | Propietario |
| Administrador de aplicaciones por ManageEngine | Linux, Windows | Java, PHP, Ruby,.NET,.NET Core, Node.js. | Ver Gestión de Desempeño de Aplicaciones. | Propietario |
| AQtime by SmartBear Software | Windows | .NET 1.0 a 4.0 aplicaciones (incluyendo aplicaciones ASP.NET), aplicaciones Silverlight 4.0, aplicaciones Windows 32- y 64-bit incluyendo C, C++, Delphi para Win32 y funciones VBScript y JScript | Perfilador de rendimiento y herramientas de depuración de memoria/recurso. | Propietario |
| Arm MAP | Linux | C, C++, aplicaciones Fortran/Fortran90 y Python. | Perfil de rendimiento. Muestra I/O, comunicación, uso de operación de punto flotante y costos de acceso a la memoria.
Soporta aplicaciones multi-treaded y multiprocess - como aquellas con paralelismo MPI o OpenMP y escalas a conteos de nodos muy altos. | Propietario |
| CodeAnalyst by AMD | Linux, Windows | C, C++, Objetivo C.NET, Java (trabajos a nivel ejecutable) | AMD uProf supera CodeAnalyst y CodeXL para CPU y Power profiling en procesadores AMD.
Perfilador de código basado en GUI; sólo profiling basado en timer básico en procesadores Intel. Basado en OProfile. | Fuente libre/abierto (GPL) o propietario |
| AMD CodeXL by AMD | Linux, Windows | Para perfiles y depuración de GPU: OpenCL. | Una suite de herramientas para perfiles GPU, depurador GPU y un analizador de núcleo estático. | Fuente libre/abierto (MIT) |
| AMD uProf por AMD | Linux, Windows | C, C++,.NET, Java, Fortran | Perfilador de código, muestra perfiles basados en procesadores AMD. | Propietario |
| DevPartner por Borland / Micro Focus | . NET, Java | Prueba suite que detecta y diagnostica automáticamente defectos de software y problemas de rendimiento. | Propietario | |
| DTrace by Sun Microsystems | Solaris, Linux, BSD, macOS | Marco de rastreo dinámico completo para solucionar problemas de núcleo y problemas de aplicación en sistemas de producción en tiempo real. | Fuente libre/abierto (CDDL) | |
| dynamoRIO por RIO | Linux, Windows | Marco dinámico de instrumentación binaria para el desarrollo de herramientas dinámicas de análisis de programas. | Fuente libre/abierto - BSD | |
| Dynatrace | Linux, Windows, iOS, Android, Azure, AWS, AIX, Solaris, HP/UX, zOS, zLinux | .NET, Java, PHP, HTML5, Ajax (para sitios web), Objective-C/iOS, Java/Android, C/C++, CICS, Apache, Nginx, Cassandra, Hadoop, Mongo DB, HBase | Ver Gestión de Desempeño de Aplicaciones. | Propietario |
| Extrae | Linux, Android | Principalmente C/C++/Fortran, pero puede perfilar cualquier aplicación que vincule con bibliotecas paralelas soportadas (por ejemplo, MPI4PY) | Herramienta de análisis de rendimiento de HPC con visor y utilidades de apoyo. Diseñado principalmente para aplicaciones paralelas con soporte para MPI, OpenMP, CUDA, OpenCL, pthreads y OmpSs. Otras características incluyen el rastreo de funciones del usuario y la captura de eventos de hardware a través de PAPI. | Fuente libre/abierto - LGPL-2.1 |
| FusionReactor | Linux, Windows, macOS, AWS, Azure, Google Cloud | Java, ColdFusion, Apache, MongoDB Funciona con cualquier idioma apoyado por el JVM | Realiza la gestión de la aplicación y el rendimiento y el análisis de la causa raíz. Combina APM y Low Level Developer Style Tooling; también incluye un depurador y perfiles Java, memoria, hilo y CPU. | Propietario |
| GlowCode por Electric Software, Inc. | Windows | Aplicaciones de 64 bits y 32 bits, C, C++,.NET y dlls generados por cualquier compilador de idiomas. | Perfilador de rendimiento y memoria que identifica funciones intensivas en el tiempo y detecta fugas de memoria y errores. | Propietario |
| gprof | Linux/Unix | Cualquier idioma apoyado por gcc | Varias herramientas con muestreo combinado y perfiles de gráficos de llamada. Un conjunto de herramientas de visualización, herramientas VCG, utiliza la interfaz de dibujo de gráficos de llamada (CGDI) para interactuar con gprof. Otra herramienta de visualización que interfiere con gprof es KProf. | Fuente libre/abierto - versión BSD es parte de 4.2BSD y GNU versión es parte de GNU Binutils (por GNU Project) |
| HWPMC | FreeBSD 6.0+ | Marco de control del rendimiento de los equipos de contabilidad y muestreo a nivel de sistema y de proceso que apoya múltiples arquitecturas. | BSD | |
| Instana | Linux, Windows, iOS, Android, Azure, AWS, AIX, Solaris, HP/UX, zOS, zLinux | .NET,.Net core, Java, PHP, Ruby, Python, Crystal, Scala, Kotlin, Clojure, Haskell, Node.js, Web Browser, Apache, Nginx, Cassandra, Hadoop, Mongo DB, Elasticsearch, Kafka | Ver Gestión de Desempeño de Aplicaciones. | Propietario |
| Instrumentos con código X | macOS | C, C++, Objective-C/C++, Swift, Aplicaciones de Cocoa. | Los instrumentos muestran una línea de tiempo que muestra cualquier evento que ocurra en la aplicación, como la variación de actividad de CPU, la asignación de memoria y la actividad de red y archivo, junto con gráficos y estadísticas.
Grupo de eventos son supervisados seleccionando instrumentos específicos de: Actividad de archivo, Asignaciones de memoria, Perfilador de tiempo, actividad de GPU, etc. Para el impacto amplio del sistema del ejecutable: Trace de sistema, uso de sistemas, uso de redes, registro de energía, etc. son útiles. | Libre. Equipado con Xcode, que también es gratuito. |
| Intel Advisor | Linux y Windows. Visor sólo en macOS. | C, C++, Paráleo de datos C++ y Fortran | Una colección de herramientas de diseño y análisis - optimización de vectorización (SIMD), prototipado de hilos, análisis automatizado de tejado, modelado de descarga y análisis de gráficos de flujo | Freeware y Propietario. Disponible como parte de Intel oneAPI Base Toolkit. |
| Linux Trace Toolkit (LTT) | Linux | Requiere kernel parche | Recoge datos sobre procesos de bloqueo, conmutadores de contexto y tiempo de ejecución. Esto ayuda a identificar problemas de rendimiento en múltiples procesos o hilos. Superada por LTTng. | GPL |
| LTTng (Linux Trace Toolkit Next Generation) | Linux | Paquete de software para el rastreo correlativo del núcleo, aplicaciones y bibliotecas. | GPL/LGPL/MIT | |
| OProfile | Linux | Perfiles todo lo que se ejecuta en el sistema Linux, incluyendo programas duros de perfil, como controladores de interrupción y el propio núcleo. | Perfilador de muestreo para Linux que cuenta faltas de caché, puestos, fetches de memoria, etc. | Fuente abierta GPLv2 |
| Analizador de rendimiento Oracle Solaris Studio | Linux, Solaris | C, C++, Fortran, Java; MPI | Perfil de rendimiento y memoria. | Librería apropiada |
| perf tools | Linux kernel 2.6.31+ | Perfilador de muestreo con soporte de eventos de hardware en varias arquitecturas. | GPL | |
| Performance Application Programming Interface (PAPI) | Varios | Biblioteca para contadores de rendimiento de hardware en microprocesadores modernos. | ||
| Pin by Intel | Linux, Windows, macOS, Android | Sistema dinámico de instrumentación binaria que permite a los usuarios crear herramientas de análisis de programas personalizados. | Propietario pero gratuito para uso no comercial | |
| PurifyPlus Racional | AIX, Linux, Solaris, Windows | Herramienta de perfil de rendimiento, depurador de memoria y herramienta de cobertura de código. | Propietario | |
| Scalasca | Linux | C/C++, Fortran | Analizador de trazas paralelo. | Fuente libre/abierto (licencia BSD) |
| Tiburón de Apple | macOS (continúa con 10.7) | Analizador de rendimiento. | Librería apropiada | |
| Superluminal | Windows, Xbox One, PlayStation | C++, Rust,.NET | Perfilador de rendimiento (sampled o instrumented) y analizador, centrado en el desarrollo del juego. | Propietario |
| Systemtap | Linux | Herramienta de rastreo/probación del sistema programable; puede ser scriptada para generar perfiles de contador de tiempo o rendimiento o basados en funciones del núcleo y/o su espacio de usuario. | Fuente abierta | |
| Valgrind | Linux, macOS, Solaris, Android | Cualquiera, incluido el ensamblador | Sistema de depuración y profilado; soporta herramientas para detectar errores de gestión de memoria y de rosca, o rendimiento de perfil (cachegrind y callgrind). KCacheGrind, valkyrie and alleyoop are front-ends for valgrind. | Fuente libre/abierto (GPL) |
| VTune Profiler by Intel Corporation (anmplificador VTune anterior) | Linux, Windows, sólo para macOS | C, C++, C#, Data Parallel C++ (DPC++), Fortran,.NET, Java, Python, Go, ASM Asamblea General | A collection of profiling analyses implemented with sampling, instrumentation and processor trace technologies. Incluye análisis Hotspot, Threading, HPC, I/O, FPGA, GPU, System, Throttling y Microarchitecture. | Freeware y Propietario. También está disponible como parte de la herramienta base Intel oneAPI. |
| Análisis de rendimiento de Windows Toolkit por Microsoft | Windows, Linux, Android | Primaria de todo el sistema Herramienta de análisis de rendimiento de Windows, incluyendo muestreo de CPU, programación de CPU, disco y todo. Puede abrir los rastros de muestreo LTTng y Perf Cpu, así como los rastros de Android Perfetto a través de plugins | Software gratuito con Linux / Android Open Source plugins | |
| RotateRight Zoom | Linux, macOS, Visor Sólo para Windows | Apoya los idiomas más compilados en procesadores ARM y x86. | Perfilador estadístico gráfico y de línea de comandos (basado en eventos). | |
| VisualSim | Linux, macOS, Microsoft Windows | Supports C/C++/SystemC | Plataforma de modelado gráfico y simulación para seleccionar, analizar y validar la arquitectura de sistemas electrónicos complejos para el rendimiento, potencia y fiabilidad. | Propietario |
C y C++
- Arm MAP, un perfilador de rendimiento que soporta plataformas Linux.
- AppDynamics, una solución de gestión del rendimiento de aplicaciones para aplicaciones C/C++ a través de SDK.
- AQtime Pro, un depurador de perfiles de rendimiento y asignación de memoria que se puede integrar en Microsoft Visual Studio, y Embarcadero RAD Studio, o puede funcionar como una aplicación independiente.
- IBM Rational Purify fue un depurador de memoria que permite el análisis de rendimiento.
- Los instrumentos (abundados con Xcode) se utilizan para perfilar las asignaciones de memoria de un ejecutable, el uso del tiempo, la actividad del sistema de archivos, la actividad de GPU, etc.
- Intel Parallel Studio contiene Amplificador Intel VTune, que sintoniza programas tanto en serie como en paralelo. También incluye a Intel Advisor e Intel Inspector. Intel Advisor optimiza la vectorización (utilización de instrucciones SIMD) y prototipos implementaciones de rosca. Intel Inspector detecta y depura razas, bloqueos y errores de memoria.
- Parasoft Insure++ ofrece una herramienta gráfica que muestra y anima las asignaciones de memoria en tiempo real para exponer el soplo de memoria, fragmentación, uso excesivo, cuellos de botella y fugas.
- Visual Studio Team System Profiler, perfilador comercial de Microsoft.
Java
- Inspección IT es una solución de gestión de aplicaciones de código abierto (APM) para monitorear y analizar aplicaciones de software, disponible bajo la Licencia Apache, versión 2.0 (ALv2).
- JConsole es el perfilador que viene con el kit de desarrollo Java
- JProfiler
- Control de Misión JRockit, un perfilador con baja sobrecarga.
- Netbeans Profiler, un perfilador integrado en el NetBeans IDE (utiliza internally jvisualvm profiler)
- Plumbr, control de rendimiento de aplicaciones Java con detección automática de causas raíz. Enlaces filtraciones de memoria, ineficiencia GC, lenta base de datos y llamadas de servicio web externas, hilos cerrados y otros problemas de rendimiento a la línea en código fuente que los causa.
- OverOps, Confiabilidad continua para la cadena de suministro de software moderna, detecta y entrega automáticamente la automatización de causas raíz para todos los errores.
- VisualVM es una herramienta visual que integra varias herramientas JDK de línea de comandos y capacidades de perfilado ligero. Está incluido con el Kit de Desarrollo Java desde la versión 6, actualización 7.
- FusionReactor, Control de rendimiento de aplicaciones Java - herramientas de baja sobrecarga, grado de producción para depuración de la producción, perfilado de códigos, memoria y análisis de hilos
JavaScript
- Las herramientas del desarrollador del navegador web de Firefox contienen una herramienta de rendimiento, lo que proporciona información sobre el rendimiento de JavaScript de un sitio web.
- Microsoft Visual Studio AJAX Profiling Extensions es una herramienta de perfilado gratuita para JavaScript por Microsoft Research.
. NET
- CLR Profiler es un perfilador de memoria gratuito proporcionado por Microsoft para aplicaciones CLR.
- GlowCode es un perfilador de rendimiento y memoria para. Aplicaciones NET usando C# y otros. Idiomas NET. Identifica funciones intensivas en el tiempo y detecta fugas de memoria y errores en aplicaciones nativas, administradas y mixtas Windows x64 y x86.
- Visual Studio
PHP
- BlackFire.io
- Dbg
- Xdebug es una extensión PHP que proporciona capacidades de depuración y perfilado.
Véase también
- Análisis del desempeño
- Depurador de memoria (incluye lista de perfiles de memoria)
Referencias
- ^ "CodeXL". Archivado desde el original el 19 de septiembre de 2013. Retrieved 26 de septiembre 2013.
- ^ "Performance - Firefox Herramientas para Desarrolladores Silencio MDN". MDN Web Docs. Retrieved 27 de octubre 2021.
Enlaces externos
- Herramientas de análisis de rendimiento, artículo del Laboratorio Nacional Lawrence Livermore
Más resultados...