中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何在pycharm中運行和調試torch分布式訓練

發布時間:2021-12-04 19:30:45 來源:億速云 閱讀:900 作者:柒染 欄目:大數據

這篇文章給大家介紹如何在pycharm中運行和調試torch分布式訓練,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

現在很多深度學習研究開源代碼都會使用pytorch框架,原因之一就是在torch中,只要你定義好了一個module,你就可以輕易的用  torch.distributed  將其應用到單機多GPU或者多機多GPU的場景中,加速模型的收斂速度。    

但是在所有github項目的readme中,都是僅給出了如何在命令行模式下使用分布式的方法。對于需要在  Pycharm或其他IDE  進行調試的研究者就不太適用。

環境

    PyTorch 1.1.0    PyCharm 2020.1

分析Readme參數設置

首先,我們需要查看項目的Readme文件是如何使用分布式訓練的,以備后面將參數設置在Pycharm中。

python -m torch.distributed.launch --nproc_per_node=4 tools/train.py --cfg xxx.yaml

python -m torch.distributed.launch --nproc_per_node=4 表示調用  torch.distributed.launch    這個.py文件進行分布式訓練;  --nproc_per_node=4  說明創建節點數為4,這個值通常與訓練使用的GPU數量一致。
tools/train.py --cfg xxx.yaml 是真正的訓練文件,后面的  --cfg xxx.yaml    是train.py 使用時需要給出的執行參數名稱和值。

軟鏈接distributed文件

通過對調用分布式的命令分析,我們首先需要找到  torch.distributed.launc  h  這個文件,并將它軟鏈接到我們的Pycharm項目目錄下。為什么使用軟鏈接而不是直接復制呢?因為軟鏈接不會變更文件的路徑,從而使得  launch.py  文件可以不做任何改動的情況下去  import  它需要的包。
在Ubuntu中,通過以下命令創建軟鏈接

ln -s /yourpython/lib/python3.6/site-packages/torch/distributed/ /yourprogram/

以上命令沒有直接鏈接launch.py而是它的父目錄distributed,是因為這樣比較容易知道launch.py是一個軟鏈接,不與項目中的其他文件混淆。

設置Pycharm運行參數

打開Pycharm,依次點擊Run->Edit Configurations 進入參數配置界面:

如何在pycharm中運行和調試torch分布式訓練

如何在pycharm中運行和調試torch分布式訓練

只需要配置Script path為launch.py路徑;Parameters為launch.py運行參數,參考命令行調用的方法,設置如下。


--nproc_per_node=4tools/train.py --cfg xxx.yaml
通過以上步驟就可以在Pycharm中運行分布式訓練了。  不過,如果是在調試模型最好還是修改一下trian.py文件,通過單GPU方式調試,并不是說分布式模式不能調試,僅僅是因為在單GPU方式下,對于數據流更好把控,減少調試時間。

關于如何在pycharm中運行和調試torch分布式訓練就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

措美县| 宁陕县| 防城港市| 达拉特旗| 集贤县| 郯城县| 连江县| 通化市| 大丰市| 华阴市| 邵阳县| 海林市| 沾益县| 龙川县| 建湖县| 汨罗市| 西乌珠穆沁旗| 天津市| 泾阳县| 开鲁县| 湖南省| 达州市| 轮台县| 芦溪县| 孝昌县| 名山县| 博白县| 老河口市| 高州市| 德州市| 南宁市| 瑞金市| 兖州市| 焦作市| 淄博市| 咸丰县| 定襄县| 重庆市| 三明市| 神木县| 吉安市|