Memray de código abierto de Bloomberg, una herramienta de creación de perfiles de memoria para Python

Bloomberg tiene memray de código abierto, una herramienta para crear perfiles de memoria en aplicaciones Python. El programa rastrea las operaciones de asignación de memoria en Python y ofrece una interfaz visual para analizar y optimizar el consumo de memoria de varias secciones de código, así como complementos escritos en C/C++. Los informes se pueden generar de forma interactiva o en formato HTML. Incluye una interfaz CLI para gestionar la creación de perfiles y una biblioteca que se puede utilizar para realizar un seguimiento de las operaciones de memoria en proyectos de terceros. El código está publicado bajo la licencia Apache 2.0. La operación solo se admite en la plataforma Linux.

Características principales:

  • Aplicaciones: identifique los motivos del alto consumo de memoria en las aplicaciones, encuentre pérdidas de memoria e identifique el código que realiza demasiadas asignaciones de memoria.
  • Realiza un seguimiento de todas las llamadas a funciones en relación con el consumo total de memoria, el consumo dentro de la función y el número de operaciones de asignación de memoria. Capacidad para estimar con precisión la pila de llamadas.
  • Procesar llamadas a bibliotecas en C/C++ y contabilizar el consumo de memoria en módulos nativos. Soporte para analizar proyectos usando numpy y pandas.
  • Gastos generales mínimos e impacto insignificante en el rendimiento de la aplicación analizada. Opción para deshabilitar el seguimiento de código nativo para mejorar el rendimiento.
  • Disponibilidad de una gran cantidad de informes de uso de memoria, incluidos gráficos visuales jerárquicos y de escalera (gráfico de llama).
  • Capacidad para trabajar con subprocesos y analizar la memoria en el contexto de subprocesos individuales. Se admiten tanto los subprocesos de Python como los subprocesos nativos, como los subprocesos de C++ utilizados en los módulos C/C++.
  • Posibilidad de integración con pytest y provisión de anotaciones de pytest que definen los límites de consumo de memoria; si se exceden, se generarán advertencias durante la ejecución de la prueba.

Memray de código abierto de Bloomberg, una herramienta de creación de perfiles de memoria para Python
Memray de código abierto de Bloomberg, una herramienta de creación de perfiles de memoria para Python


Fuente: opennet.ru

Añadir un comentario