标签:return port 一个 一起 python程序 查看内存 安装 跟踪 对象
memory_profiler 模块被用于在逐行的基础上,测量你代码的内存使用率,也建议安装 psutil 包,使得 memory_profile 模块运行的更快
from memory_profiler import profile @profile(precision=6) def primes(n): if n == 2: return [2] elif n < 2: return [] s = range(3, n + 1, 2) mroot = n ** 0.5 half = (n + 1) / 2 - 1 i = 0 m = 3 while m <= mroot: if s[i]: j = (m * m - 3) / 2 s[j] = 0 while j < half: s[j] = 0 j += m i = i + 1 m = 2 * i + 3 return [2] + [x for x in s if x] len(primes(100000))
meliae会把某个时刻的内存给dump到一个文件中,然后再对该文件进行分析,当我们的某个python程序占用内存很大,可能有内存泄露发生时,可以使用该工具来进行检测分析
Guppy (使用了Heapy):使用 guppy 包,你可以跟踪每个类型在你代码中每个阶段(字符, 元组, 字典 等等)有多少对象被创建了,查看占用内存前十位变量的工具
objgraph模块:该工具允许你查看内存中对象的数量,定位含有该对象的引用的所有代码的位置。结合pdb一起使用
标签:return port 一个 一起 python程序 查看内存 安装 跟踪 对象
原文地址:https://www.cnblogs.com/testzcy/p/12665878.html