![](/img/trans.png)
[英]How to find memory usage with memory_profiler Python?
[英]memory_profiler: how to plot per-function memory usage
版本:0.50.0
在官方文檔中 。 有一個指向此博客的鏈接,該鏈接為我提供了如何制作每個功能的內存使用情況圖的說明。 但是,當我嘗試運行本文中的確切代碼時。
test1.py
import time
@profile
def test1():
n = 10000
a = [1] * n
time.sleep(1)
return a
@profile
def test2():
n = 100000
b = [1] * n
time.sleep(1)
return b
if __name__ == "__main__":
test1()
test2()
命令是:
mprof run test1.py
我收到此錯誤:
追溯(最近一次通話):
@profile NameError中第3行的文件“ test.py”:未定義名稱“ profile”
這很奇怪,因為有來自官方的引語:
警告
如果您的Python文件從memory_profiler導入配置文件導入了內存分析器,則不會記錄這些時間戳。 注釋掉導入,保留功能,然后重新運行。
因此,如果我想按功能使用內存,則需要from memory_profiler import profile
注釋掉,但是當我注釋掉它時,會出現錯誤。
文檔並不是真正的最新文檔,請嘗試使用mprof run --python python3 test1.py
(已mprof run --python python3 test1.py
注釋導入),它似乎對我mprof run --python python3 test1.py
,但僅將輸出生成到文件,而根本不會寫入stdout。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.