PyTorch 1.0 中文文檔:多進程包 - torch.multiprocessing

譯者:hijkzzzhtml

torch.multiprocessing 是一個本地 multiprocessing 模塊的包裝. 它註冊了自定義的reducers, 並使用共享內存爲不一樣的進程在同一份數據上提供共享的視圖. 一旦 tensor/storage 被移動到共享內存 (見 share_memory_()), 將其發送到任何進程不會形成拷貝開銷.python

此 API 100% 兼容原生模塊 - 因此足以將 import multiprocessing 改爲 import torch.multiprocessing 使得全部的 tensors 經過隊列發送或者使用其它共享機制, 移動到共享內存.git

由於 APIs 的類似性, 咱們沒有爲此包提供足夠的文檔, 因此推薦參考很是優秀的原生進程模塊文檔.github

警告apache

若是主進程意外退出 (好比 由於一個信號的到來), Python’s multiprocessing 有時候會沒法請理它的子進程. 這是一個衆所周知的警告, 所以,若是你在中斷解釋器後發現任何資源泄漏,這可能意味着你剛剛發生了這種狀況.url

策略管理

torch.multiprocessing.get_all_sharing_strategies()

返回當前系統支持的共享策略的集合.spa

torch.multiprocessing.get_sharing_strategy()

返回當前的 CPU tensors 共享策略..net

torch.multiprocessing.set_sharing_strategy(new_strategy)

設置一個新的 CPU tensors 共享策略.code

閱讀全文/改進本文htm

相關文章
相關標籤/搜索