Python性能分析
Memray
Memray 是 Python 的内存分析器。它可以跟踪 Python 代码、本机扩展模块和 Python 解释器本身中的内存分配。它可以生成多种不同类型的报告,帮助您分析捕获的内存使用数据。虽然通常用作 CLI 工具,但它也可以用作库来执行更细粒度的分析任务。
显着特点:
- 🕵️♀️ 跟踪每个函数调用,以便它可以准确地表示调用堆栈,这与采样分析器不同。
- ℭ 还处理 C/C++ 库中的本机调用,因此整个调用堆栈都出现在结果中。
- 🏎 速度极快!
分析只会稍微减慢应用程序的速度。
跟踪本机代码速度稍慢,但可以根据需要启用或禁用。 - 📈 它可以生成有关收集的内存使用数据的各种报告,例如火焰图。
- 🧵 适用于 Python 线程。
- 👽🧵 使用本机线程(例如 C 扩展中的 C++ 线程)。
Memray 可以帮助解决以下问题: - 分析应用程序中的分配情况以帮助发现高内存使用率的原因。
- 查找内存泄漏。
- 查找代码中导致大量分配的热点。
brew install memray
不要让今天成为明天的遗憾!