本發明涉及光通信,尤其是指一種流水線并行業務的光互聯時延優化調度方法。
背景技術:
1、在人工智能技術領域,大規模深度學習模型的訓練是驅動技術持續進步的核心動力,隨著深度學習模型參數規模由數十億級向萬億級快速演進,傳統單機單卡訓練及簡單數據并行訓練方式已經難以滿足大規模模型的訓練需求。流水線并行(pipelineparallelism,pp)技術通過將神經網絡模型按照層進行切分,并部署至不同計算設備執行計算任務,為超大規模深度學習模型的高效訓練提供了重要實現途徑。受限于單一加速器的內存容量,超大規模深度學習模型無法在單個加速器上完成存儲與訓練,必須將模型進行拆分并部署至多個加速器協同訓練,隨著模型并行技術的不斷發展,設備間的通信損耗與通信開銷問題日益突出,已成為制約超大規模訓練效率提升的關鍵瓶頸。
2、現有技術主要圍繞dragonfly光互聯網絡中的路由與調度優化展開,主要包括以下幾種方式:1、基于靜態路由策略的調度方法,在訓練任務啟動前預先構建固定的光互聯路徑拓撲,根據模型層間依賴關系設定靜態通信路徑,并采用固定時隙分配機制完成設備間通信調度。2、基于數據量優先級的短業務優先調度算法,將流水線并行任務按照通信數據量進行排序,優先調度數據量較小的層間通信任務,以減少設備排隊長度并降低整體等待時間。3、最短路徑優先(shortest?path?first,sp)策略,其在通信過程中采用最短路徑算法優先調度通信時間最短的pp業務,以最小化端到端傳輸時延為目標進行業務調度。但是,這些方法均忽略了流水線并行訓練中多個任務并非獨立運行,而是存在嚴格的層間依賴與執行約束,僅通過靜態通信路徑、固定時隙分配或單一維度的優化(例如短業務優先調度或最短路徑優先調度策略),容易導致鏈路資源競爭、端口調度沖突、時延增加、傳輸氣泡擴大等問題,無法滿足流水線并行通信業務的低時延、低氣泡、高資源利用率的核心需求。
3、綜上所述,現有的光互聯網絡中的路由與調度優化方法忽略了流水線并行通信時業務之間的執行依賴性和資源分配的關聯性,無法實現鏈路、時隙、端口等資源的協同優化,難以平衡多任務調度與流水線約束的適配性,最終導致調度效率低下、資源利用不充分、通信時延和流水線氣泡過大、無法滿足高效通信需求的問題。
技術實現思路
1、為此,本發明所要解決的技術問題在于克服現有技術中的光互聯網絡中的路由與調度優化方法忽略了流水線并行通信時業務之間的執行依賴性和資源分配的關聯性,無法實現鏈路、時隙、端口等資源的協同優化,難以平衡多任務調度與流水線約束的適配性,最終導致調度效率低下、資源利用不充分、通信時延和流水線氣泡過大、無法滿足高效通信需求的問題。
2、為解決上述技術問題,本發明提供了一種流水線并行業務的光互聯時延優化調度方法,包括:
3、獲取基于mems的光交換網絡、流水線并行的業務需求集合中的業務節點對、每個業務節點對之間的業務數、各個業務的執行順序、每個業務的時間需求量;
4、基于各個業務的執行順序、時間需求量和起始時間,構建流水線約束;基于各個業務節點對在光交換網絡中光路由節點之間調度的業務數等于各個業務節點對之間的業務數,構建業務數路由調度約束;
5、基于各個業務的起始時間、時間需求量、最早調度時間、在光交換網絡中分配的總時隙,構建各個業務的業務完整傳輸約束;基于各個業務在光交換網絡中分配的時隙連續,構建各個業務的業務連續性約束;
6、對于在光交換網絡中共享相同鏈路的各個業務,基于執行順序和起始時間構建路由約束;對于在光交換網絡中共享相同mems端口的各個業務,基于執行順序、起始時間和mems端口的重配置延遲時間,構建端口約束;
7、以最小化所有業務完成時間以及流水線氣泡為目標,構建調度目標函數;
8、對調度目標函數、流水線約束、業務數路由調度約束、業務完整傳輸約束、業務連續性約束、路由約束和端口約束求解,得到各個業務在光交換網絡中分配的鏈路和時隙。
9、優選地,基于各個業務的執行順序、時間需求量和起始時間,構建流水線約束,包括:以在后執行的業務的起始時間大于等于在先執行的業務的起始時間與時間需求量之和,構建流水線約束。
10、優選地,流水線約束表示為:
11、,
12、其中,表示業務節點對之間的在后執行的業務的起始時間;表示業務節點對之間的在先執行的業務的起始時間;表示業務的時間需求量;
13、業務數路由調度約束表示為:
14、,
15、其中,表示判斷業務節點對之間的業務d是否完成調度的二元變量,若業務節點對之間的業務d完成調度,,若業務節點對之間的業務d未完成調度,;表示業務節點對之間的業務數;表示業務節點對在光交換網絡中的可用路徑數。
16、優選地,基于各個業務的起始時間、時間需求量、最早調度時間、在光交換網絡中分配的總時隙,構建各個業務的業務完整傳輸約束;基于各個業務在光交換網絡中分配的時隙連續,構建各個業務的業務連續性約束,包括:
17、以各個業務的起始時間與時間需求量之和小于等于各個業務在光交換網絡中分配的總時隙,以及各個業務的起始時間大于等于各個業務的最早調度時間,構建各個業務的業務完整傳輸約束;
18、以各個業務在光交換網絡中分配的總時隙中每個時隙大于等于各個業務的起始時間,且小于等于各個業務的起始時間與時間需求量之和與1的差值,以及各個業務在光交換網絡中分配的總時隙中的時隙數量等于各個業務的時間需求量,構建各個業務的業務連續性約束。
19、優選地,業務完整傳輸約束表示為:
20、,
21、,
22、其中,表示業務節點對之間的業務d的起始時間;表示業務節點對之間的業務d的時間需求量;表示業務節點對之間的業務d在光交換網絡中分配的總時隙;表示業務節點對之間的業務d的最早調度時間;
23、業務連續性約束表示為:
24、,
25、,
26、,
27、其中,表示光交換網絡中的可用時隙;表示判斷可用時隙t是否被分配給業務節點對之間的業務d的二元變量,當可用時隙t被分配給業務節點對之間的業務d時,,當可用時隙t未被分配給業務節點對之間的業務d時,;表示極大值。
28、優選地,對于在光交換網絡中共享相同鏈路的各個業務,基于執行順序和起始時間構建路由約束;對于在光交換網絡中共享相同mems端口的各個業務,基于執行順序、起始時間和mems端口的重配置延遲時間,構建端口約束,包括:
29、對于任意兩個在光交換網絡中共享相同鏈路的業務,以在后執行的業務的起始時間大于等于在先執行的業務的完成時間,構建路由約束;
30、對于任意兩個在光交換網絡中共享相同mems端口的業務,以在后執行的業務的起始時間大于等于在先執行的業務的完成時間與該mems端口的重配置延遲時間之和,構建端口約束。
31、優選地,路由約束表示為:
32、,
33、其中,表示業務節點對之間的在先執行的業務的起始時間;表示業務節點對之間的在后執行的業務的起始時間;表示業務的時間需求量;表示極大值;表示判斷業務和業務在光交換網絡中是否共享相同鏈路的二元變量,若業務和業務在光交換網絡中共享相同鏈路,則,若業務和業務在光交換網絡中未共享相同鏈路,則;表示判斷業務是否完成調度的二元變量,若業務完成調度,,若業務未完成調度,;表示判斷業務和業務執行順序的二元變量,若業務先執行,業務后執行,則,若業務先執行,業務后執行,則;
34、端口約束表示為:
35、,
36、其中,表示mems端口的重配置延遲時間;表示判斷業務和業務在光交換網絡中是否共享相同mems端口的二元變量,若業務和業務在光交換網絡中共享相同mems端口,則,若業務和業務在光交換網絡中未共享相同mems端口,則;表示判斷業務是否完成調度的二元變量,若業務完成調度,,若業務未完成調度,。
37、優選地,調度目標函數表示為:
38、,
39、,
40、,
41、其中,表示所有業務完成時間;表示所有業務完成時間的權重;表示流水線氣泡的權重;表示業務節點對之間的業務d的起始時間;表示業務節點對之間的業務d的時間需求量;表示流水線氣泡;表示業務節點對的數量;表示業務節點對之間的業務數量;表示業務節點對之間的業務d的最早調度時間。
42、優選地,對調度目標函數、流水線約束、業務數路由調度約束、業務完整傳輸約束、業務連續性約束、路由約束和端口約束求解,得到各個業務在光交換網絡中分配的鏈路和時隙,包括:
43、基于各個業務在光交換網絡中所有可選的候選路徑的瓶頸程度指標,對各個業務的瓶頸程度進行排序;
44、按照瓶頸程度由高到低的順序,得到各個業務的分配順序;
45、采用迪杰斯特拉算法按照分配順序依次為各個業務進行鏈路和時隙分配,得到各個業務在滿足調度目標函數、流水線約束、業務數路由調度約束、業務完整傳輸約束、業務連續性約束、路由約束、端口約束、總時延最小化約束和傳輸氣泡最小化約束時的鏈路和時隙分配結果。
46、優選地,候選路徑的瓶頸程度指標為該候選路徑上所有鏈路的最小帶寬或最大鏈路負載。
47、本技術提供的流水線并行業務的光互聯時延優化調度方法具有以下有益效果:
48、1、在建模階段直接基于流水線并行業務之間的執行順序構建流水線約束,將業務之間固有的先后依賴關系嵌入調度核心,并通過業務數路由調度約束確保所有業務均被調度,通過業務連續性約束和業務完整性約束限定每個業務分配的時隙連續不間斷、且時隙長度能夠滿足業務執行保持時隙,由于流水線并行通信時可能存在不同業務共享相同鏈路和mems端口,本技術通過構建路由約束實現鏈路資源互斥與時序適配,通過構建端口約束實現mems端口獨占與時序以及端口重配置延遲適配,將鏈路、時隙、端口作為整體進行聯合分配,通過多個約束避免資源調度時的端口競爭、鏈路沖突,從而實現多類資源的協同調度;最后將總完成時間與流水線氣泡同時作為優化目標,在滿足所有約束的前提下最小化氣泡與通信時延,充分考慮了流水線并行通信時多個業務之間的依賴性和資源競爭關聯性,能夠充分平衡多任務調度與流水線約束的適配性,從而有效提升調度效率與資源利用率,降低通信時延與流水線氣泡,滿足大規模深度學習流水線并行訓練的高效通信需求;
49、2、在對調度目標和約束求解以實現業務資源分配時,利用最大瓶頸流水線優先算法,根據業務在候選路徑上的瓶頸鏈路指標進行排序,優先為瓶頸程度較高的業務分配關鍵鏈路資源,使其優先占用關鍵鏈路資源,避免高瓶頸業務因資源被搶占而無法調度,從整體上減輕鏈路擁塞,減少資源競爭與沖突;在確定業務調度順序后,依次對各業務進行路徑計算,先采用迪杰斯特拉算法在當前網絡狀態下求取滿足約束條件的最短路徑并對該業務進行鏈路和時隙分配,從而能夠動態適配業務執行順序、鏈路負載變化及mems端口重配置延遲,在復雜多任務并行場景下仍能保持穩定、低沖突的調度結果,更貼合大規模深度學習流水線并行訓練對低時延、高可靠通信的需求。