【问题标题】:Memory profiler over time python script [closed]随着时间的推移内存分析器python脚本[关闭]
【发布时间】:2014-04-23 13:13:58
【问题描述】:

我想知道是否有可能有一个内存分析器来分析我的 python 脚本占用的内存并告诉我随着时间的推移的内存使用情况。

这样做的目的是对此进行规划并得出结论。

像往常一样在 python 中,越简单越好。

谢谢。

【问题讨论】:

    标签: python profiler memory-profiling


    【解决方案1】:

    见:https://pypi.python.org/pypi/memory_profiler

    只需使用@profile 装饰您想要的每个功能。

    无耻地取自上述网址:

    example.py

    @profile
    def my_func():
        a = [1] * (10 ** 6)
        b = [2] * (2 * 10 ** 7)
        del b
        return a
    
    if __name__ == '__main__':
        my_func()
    

    然后:

    $ pip install memory_profiler
    $ python -m memory_profiler example.py
    

    【讨论】:

    • 我已经使用了一个 mem-profiler,但是我发现的那些都不能得到我想要的信息(我坚持随着时间的推移)。我目前所做的最终目标是控制我正在使用的机器的内存分配,以便在需要时允许更多内存。
    【解决方案2】:

    您可以在其他答案中使用任何分析器,例如 mem-profile 甚至 psutil ,并围绕一个逻辑来收集时间戳以及当前的内存使用情况,然后使用它来绘制。只是说明明显的情况,以防你错过,HTH。查看这个答案psutil for memory,了解如何使用 psutil 查询当前内存使用情况

    【讨论】:

      猜你喜欢
      • 2011-03-07
      • 2013-08-10
      • 2022-01-20
      • 2013-05-25
      • 2019-01-25
      • 1970-01-01
      • 2013-11-26
      • 1970-01-01
      • 2011-11-08
      相关资源
      最近更新 更多