[英]How to reduce memory consumption (RAM) on Python/Django project?
[英]How to accelerate python script and reduce memory consumption?
我有一個 python 腳本,它使用 numpy、sklearn 和很多其他東西。 此腳本應分析在線數千個 500kb 大小的 wav 文件。 當我以並行模式運行時,這個腳本 python 消耗了幾乎所有的內存。
我想知道是否有可能,例如,“編譯”python 腳本或做一些事情來降低並行運行腳本的成本。
先感謝您!
python中沒有編譯這樣的東西,即使有一個隱含的編譯發生,但它與這個問題無關。 您可能正在耗盡內存,因為您沒有控制應用程序中並行進程/線程的數量。
您可以創建一個池,然后使用它來對資源消耗進行一定程度的控制。 從多處理導入池
def f(x):
return x*x
if __name__ == '__main__':
with Pool(5) as p:
print(p.map(f, [1, 2, 3]))
您可以查看此鏈接以獲取更多詳細信息https://docs.python.org/3.5/library/multiprocessing.html
保持池大小等於處理器中的內核數以獲得最佳性能。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.