簡體   English   中英

如何加速python腳本並減少內存消耗?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM