System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本申請實施例涉及分布式訓練,特別涉及一種應用于分布式訓練系統的訓練容錯方法、裝置及芯片產品。
技術介紹
1、分布式訓練(distributed?training)是一種訓練機器學習模型的方法,其將機器學習模型的訓練過程分散到分布式系統中的多個計算節點上,以實現并行訓練,來提高機器學習模型的訓練效率。
2、分布式訓練依賴于多個計算節點之間的協同工作,但易因計算節點的各種軟硬件問題而導致中斷。針對這個問題,相關技術的處理方法是:定期對各個計算節點的訓練狀態做檢查點(checkpoint),也即對于各個計算節點,控制計算節點定期將自己所處理得到的數據(如模型參數、參數梯度等)存儲至自己的內存中,以及將各個計算節點分別處理得到的數據寫到持久化存儲系統中。在故障恢復時,由于從內存中讀取檢查點的速度快于從持久化存儲系統中讀取檢查點的速度,各個計算節點優先從各自的內存中讀取檢查點,以快速恢復分布式訓練。
3、然而,對于參與分布式訓練的新計算節點,如替換故障節點的備用節點,由于新計算節點的內存中沒有做檢查點,相關技術需將故障節點在持久化存儲系統中的檢查點讀取到新計算節點,這使得檢查點的讀取效率大大下降,降低了分布式訓練系統的訓練容錯能力。
技術實現思路
1、本申請實施例提供了一種應用于分布式訓練系統的訓練容錯方法、裝置及芯片產品。本申請實施例提供的技術方案包括如下內容。
2、根據本申請實施例的一個方面,提供了一種應用于分布式訓練系統的訓練容錯方法,所述分布式訓練
3、在所述備用節點被設置為新計算節點的情況下,從所述多個計算節點中確定與所述新計算節點相關的目標計算節點;
4、將所述目標計算節點的內存中存儲的檢查點數據,遷移至所述新計算節點,其中,所述檢查點數據用于指示所述計算節點參與執行所述分布式訓練任務時的狀態;
5、控制所述新計算節點基于所述檢查點數據參與執行所述分布式訓練任務。
6、根據本申請實施例的一個方面,提供了一種應用于分布式訓練系統的訓練容錯裝置,所述分布式訓練系統包括多個計算節點以及至少一個備用節點,所述多個計算節點用于執行分布式訓練任務;所述裝置包括:
7、目標節點確定模塊,用于在所述備用節點被設置為新計算節點的情況下,從所述多個計算節點中確定與所述新計算節點相關的目標計算節點;
8、檢查點發送模塊,用于將所述目標計算節點的內存中存儲的檢查點數據,遷移至所述新計算節點,其中,所述檢查點數據用于指示所述計算節點參與執行所述分布式訓練任務時的狀態;
9、訓練任務執行模塊,用于控制所述新計算節點基于所述檢查點數據參與執行所述分布式訓練任務。
10、根據本申請實施例的一個方面,提供了一種芯片產品,所述芯片產品中存儲有計算機程序,所述計算機程序由處理器加載并執行以實現上述應用于分布式訓練系統的訓練容錯方法。
11、根據本申請實施例的一個方面,提供了一種計算機設備,所述計算機設備包括處理器和存儲器,所述存儲器中存儲有計算機程序,所述計算機程序由所述處理器加載并執行以實現上述應用于分布式訓練系統的訓練容錯方法。
12、根據本申請實施例的一個方面,提供了一種計算機可讀存儲介質,所述可讀存儲介質中存儲有計算機程序,所述計算機程序由處理器加載并執行以實現上述應用于分布式訓練系統的訓練容錯方法。
13、根據本申請實施例的一個方面,提供了一種計算機程序產品,該計算機程序產品包括計算機程序,該計算機程序存儲在計算機可讀存儲介質中。計算機設備的處理器從計算機可讀存儲介質讀取該計算機程序,處理器執行該計算機程序,使得該計算機設備執行上述應用于分布式訓練系統的訓練容錯方法。
14、本申請實施例提供的技術方案可以包括如下有益效果。
15、在利用分布式訓練系統執行分布式訓練任務的過程中,在有備用節點被設置為新計算節點的情況下,通過支持直接從多個計算節點中的目標計算節點的內存中獲取檢查點數據,來使得新計算節點能夠參與執行分布式訓練任務,而無需從持久化存儲系統中獲取檢查點數據,由于從內存中獲取數據的速度快于從持久化存儲系統中獲取數據的速度,這有利于提高檢查點數據的獲取效率,進而有利于提高分布式訓練系統的訓練容錯能力。
本文檔來自技高網...【技術保護點】
1.一種應用于分布式訓練系統的訓練容錯方法,其特征在于,所述分布式訓練系統包括多個計算節點以及至少一個備用節點,所述多個計算節點用于執行分布式訓練任務;所述方法包括:
2.根據權利要求1所述的方法,其特征在于,在所述分布式訓練任務被中斷執行的情況下,所述新計算節點用于替換所述分布式訓練系統中的故障節點繼續參與執行所述分布式訓練任務,所述故障節點是指無法繼續參與執行所述分布式訓練任務的計算節點;
3.根據權利要求2所述的方法,其特征在于,所述分布式訓練任務包括t個子任務,所述多個計算節點被劃分為t個計算節點組,所述t個計算節點組用于并行執行所述t個子任務,t為大于1的整數;所述方法還包括:
4.根據權利要求3所述的方法,其特征在于,所述從所述t個計算節點組中確定第一計算節點組,包括:
5.根據權利要求1所述的方法,其特征在于,所述分布式訓練任務包括t個子任務,所述多個計算節點被劃分為t個計算節點組,所述t個計算節點組用于并行執行所述t個子任務,在所述分布式訓練系統新增擴容節點組的情況下,所述新計算節點用于構建所述擴容節點組,所述擴容節
6.根據權利要求1至5任一項所述的方法,其特征在于,所述分布式訓練任務包括多個階段的訓練任務,每個階段的訓練任務包括多個子任務;
7.根據權利要求1至5任一項所述的方法,其特征在于,所述方法還包括:
8.根據權利要求7所述的方法,其特征在于,所述多個計算節點被劃分為t個計算節點組;
9.根據權利要求1至5任一項所述的方法,其特征在于,所述方法還包括:
10.根據權利要求1至5任一項所述的方法,其特征在于,所述檢查點數據的傳輸方法包括:遠程直接內存訪問RDMA技術。
11.一種應用于分布式訓練系統的訓練容錯裝置,其特征在于,所述分布式訓練系統包括多個計算節點以及至少一個備用節點,所述多個計算節點用于執行分布式訓練任務;所述裝置包括:
12.一種芯片產品,其特征在于,所述芯片產品中存儲有計算機程序,所述計算機程序由處理器加載并執行以實現如權利要求1至10任一項所述的應用于分布式訓練系統的訓練容錯方法。
13.一種計算機設備,其特征在于,所述計算機設備包括處理器和存儲器,所述存儲器中存儲有計算機程序,所述計算機程序由所述處理器加載并執行以實現如權利要求1至10任一項所述的應用于分布式訓練系統的訓練容錯方法。
14.一種計算機可讀存儲介質,其特征在于,所述計算機可讀存儲介質中存儲有計算機程序,所述計算機程序由處理器加載并執行以實現如權利要求1至10任一項所述的應用于分布式訓練系統的訓練容錯方法。
15.一種計算機程序產品,其特征在于,所述計算機程序產品包括計算機程序,所述計算機程序存儲在計算機可讀存儲介質中,處理器從所述計算機可讀存儲介質讀取并執行所述計算機程序,以實現如權利要求1至10任一項所述的應用于分布式訓練系統的訓練容錯方法。
...【技術特征摘要】
1.一種應用于分布式訓練系統的訓練容錯方法,其特征在于,所述分布式訓練系統包括多個計算節點以及至少一個備用節點,所述多個計算節點用于執行分布式訓練任務;所述方法包括:
2.根據權利要求1所述的方法,其特征在于,在所述分布式訓練任務被中斷執行的情況下,所述新計算節點用于替換所述分布式訓練系統中的故障節點繼續參與執行所述分布式訓練任務,所述故障節點是指無法繼續參與執行所述分布式訓練任務的計算節點;
3.根據權利要求2所述的方法,其特征在于,所述分布式訓練任務包括t個子任務,所述多個計算節點被劃分為t個計算節點組,所述t個計算節點組用于并行執行所述t個子任務,t為大于1的整數;所述方法還包括:
4.根據權利要求3所述的方法,其特征在于,所述從所述t個計算節點組中確定第一計算節點組,包括:
5.根據權利要求1所述的方法,其特征在于,所述分布式訓練任務包括t個子任務,所述多個計算節點被劃分為t個計算節點組,所述t個計算節點組用于并行執行所述t個子任務,在所述分布式訓練系統新增擴容節點組的情況下,所述新計算節點用于構建所述擴容節點組,所述擴容節點組用于增加所述分布式訓練系統執行所述分布式訓練任務的并行度;
6.根據權利要求1至5任一項所述的方法,其特征在于,所述分布式訓練任務包括多個階段的訓練任務,每個階段的訓練任務包括多個子任務;
7.根據權利要求1至5任一項所述的方法,其特征在于,所述方法還包括:
8.根據權利要求7所...
【專利技術屬性】
技術研發人員:請求不公布姓名,請求不公布姓名,請求不公布姓名,請求不公布姓名,請求不公布姓名,請求不公布姓名,
申請(專利權)人:摩爾線程智能科技成都有限責任公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。