如何获取Python程序的内存使用?

时间:2017-02-06 06:21:21

标签: python python-2.7 python-3.x

我的程序中有过多的内存使用量。为了调试内存使用量正在增加的位置,我使用下面的代码片段来检查RAM使用情况。

memory_usage = sum(sys.getsizeof(i) for i in gc.get_objects())
print('Memory usage in MB', float(usage)/1000000)

这是找到Python程序使用多少MB内存的正确方法吗?如果没有,你能建议最好的方法来监控内存使用情况吗? 我也试过

1. resource.getrusage(resource.RUSAGE_SELF).ru_maxrss
2. from guppy import hpy
   h = hpy()
   print "heapsize: ", h.heap()
3.import psutil
  print "Mem usage:",psutil.virtual_memory()

但是所有这些都会产生非常不同的结果,从而增加了混乱。

0 个答案:

没有答案