memray: Python的内存分析器


Memray 是 Python 的内存分析器。它可以跟踪 Python 代码、本机扩展模块和 Python 解释器本身中的内存分配。它可以生成几种不同类型的报告来帮助您分析捕获的内存使用数据。虽然通常用作 CLI 工具,但它也可以用作库来执行更细粒度的分析任务。

显着特点:

  • 跟踪每个函数调用,以便它可以准确地表示调用堆栈,这与采样分析器不同。
  • 还处理 C/C++ 库中的本机调用,因此整个调用堆栈都存在于结果中。
  • 快闪!分析导致应用程序的最小减速。跟踪本机代码有点慢,但可以按需启用或禁用。
  • 它可以生成有关收集到的内存使用数据的各种报告,例如火焰图。
  • 适用于 Python 线程。
  • 适用于本机线程(例如 C 扩展中的 C++ 线程)。

Memray 可以帮助解决以下问题:
  • 分析应用程序中的分配以帮助发现高内存使用的原因。
  • 查找内存泄漏。
  • 在代码中查找导致大量分配的热点。

请注意,Memray 仅适用于 Linux,不能安装在其他平台上。

点击标题