EPL(Easy Parallel Library)是高效易用的分布式模型訓練架構,深度整合多種訓練最佳化技術,提供了簡單易用的API實現各種並行化策略。您可以使用EPL實現低成本、高效能分布式模型訓練。本文為您介紹如何在DLC中使用EPL高效地進行分布式TensorFlow訓練。
前提條件
在開始執行操作之前,請確認您已經完成以下準備工作:
已為DLC服務關聯角色授權,詳情請參見雲產品依賴與授權:DLC。
已安裝鏡像環境:官方鏡像或社區鏡像(NVIDIA TensorFlow 1.15或TensorFlow-GPU 1.15)。
如果您使用的是官方鏡像(官方鏡像(由PAI團隊提供最佳化的鏡像),可以直接使用EPL,無需安裝。
如果您使用的是社區鏡像(社區鏡像(由社區提供的標準鏡像)),則需要先安裝EPL才能使用。關於如何安裝EPL,詳情請參見安裝EPL。
說明如果您使用的是DLC平台,建議鏡像選擇社區鏡像:
tensorflow-training:1.15-gpu-py36-cu100-ubuntu18.04
。您可以在DLC中提交執行命令安裝EPL,無需單獨安裝。
步驟一:代碼配置
您可以使用EPL編寫TensorFlow分布式訓練代碼,詳情請參見快速開始。
您也可以使用EPL程式碼範例快速開始分布式TensorFlow訓練,本方案使用ResNet-50訓練資料配置代碼集,您可以使用該代碼集提交TensorFlow訓練任務,且每次進行模型訓練時會自動複製最新的版本,關於如何配置代碼集,具體操作步驟如下所示。
步驟二:啟動訓練任務
進入建立任務頁面。
登入PAI控制台,在頁面上方選擇目標地區,並在右側選擇目標工作空間,然後單擊進入DLC。
在分布式訓練(DLC)頁面,單擊建立任務。
在建立任務頁面,配置基本資料和任務資源配置,其他參數配置詳情,請參見建立訓練任務。然後單擊提交。
基本資料參數配置如下。
參數
使用樣本值
資源配額
公用資源群組。
任務名稱
自訂訓練任務名稱。
節點鏡像
選擇社區鏡像>tensorflow-training:1.15-gpu-py36-cu100-ubuntu18.04。
架構
TensorFlow。
代碼配置
在線上配置下拉選項中選擇在步驟一中配置的代碼集。
代碼分支
main。
執行命令
apt update apt install libnccl2 libnccl-dev cd /root/code/EasyParallelLibrary/ pip install . cd examples/resnet bash scripts/train_dp.sh
任務資源配置參數配置如下所示。
參數
使用樣本值
節點數量
配置為2。您可以根據實際訓練需求配置該參數。
節點配置
在GPU執行個體頁簽選擇ecs.gn6v-c8g1.2xlarge。
最長運行時間長度
2小時。
在分布式訓練工作清單中,單擊目標任務名稱,進入任務詳情頁面。在該頁面中查看該任務的執行情況。具體操作,請參見查看訓練詳情。
相關文檔
如果您想瞭解關於EPL的更多內容,請參見EPL。
更多關於DLC產品的內容介紹,請參見分布式訓練(DLC)。