首页 > 解决方案 > 与 `top` 相比,tracemalloc.get_traced_memory 显示大约 1/10 的内存使用量

问题描述

tracemallocmain函数中使用来测量大量使用threading. 我定期从主函数中获取两个统计信息

  1. 取一个tracemalloc.take_snapshot()然后添加所有size文件Snapshot.statistics('filename')
  2. 也可以调用tracemalloc.get_traced_memory()来获取内存块的当前大小和峰值大小。

第一步的结果与第二步的当前内存消耗大小大致匹配。top但是,如果我这样做并检查相同的运行实例,这两个数字都只是内存消耗的 1/10 左右。

我找不到任何可以解释这种差异的文档,也没有澄清是否tracemalloc可以用来测量基于线程的多线程程序的内存。

标签: pythonprofilingmemory-profiling

解决方案


推荐阅读