本技術涉及算力網絡,具體涉及一種計算任務分配方法及算力網絡。
背景技術:
1、在近幾年的it技術發展中,ai技術無疑是最令人矚目的一個領域,ai圖像識別、aigc(ai-generated?content,人工智能生成內容)、機器視覺等新型技術改變著當代生活的方方面面。隨著gpt4.0等超大型ai模型問世,人們意識到科學的發展對算力的需求是無止境的。然而,龐大的算力需求也給材料、環境、能源帶來了巨大的壓力,據統計,chatgpt的每一次查詢需要消耗大約1200瓦時的電力,這相當于一臺普通冰箱或洗碗機一個月的用電量,尋找低能耗的計算模式迫在眉睫。
2、算力網絡是利用高速網絡在各個算力節點之間建立高速計算通道,并實現協同計算的一種技術,它利用高速網絡將普通算力有效地組織在一起,通過智能化的節點選擇和調度,有效利用閑置資源完成龐大的計算任務,從而以低能耗的方式滿足了大規模計算需求。
3、目前,針對算力網絡中算力節點的選擇和調度,有以下兩種常見的方法:
4、第一、基于網絡度量值來選擇算力
5、即對算力節點之間的網絡質量進行衡量,并優先選擇網絡性能更優的算力節點來進行計算;
6、第二、基于網絡度量值與計算能力度量值選擇算力
7、即同時評估算力節點的網絡性能和計算性能,并且優先選擇網絡性能和計算性能均優秀的節點來進行計算。
8、其中,第一種方法未考慮算力節點的計算性能,部分算力節點雖然網絡性能優良,但可能并不具備完成計算任務所需的計算條件,最終導致該節點計算失敗,浪費算力;第二種方法雖然解決了以上問題,但由于網絡性能和計算性能均優秀的節點數量稀少、資源寶貴,該方法會導致大量計算需求爭搶少量優質節點,而其他相對低性能節點則無法獲得計算任務,從而導致算力浪費及算力成本的增加。
技術實現思路
1、本技術實施例提供一種計算任務分配方法及算力網絡,用以解決傳統方法導致算力浪費及算力成本增加的技術問題。
2、第一方面,本技術實施例提供一種計算任務分配方法,包括:
3、根據算力網絡中各算力節點的計算性能、網絡性能以及用戶的時延需求,按照各算力節點單位價格由低到高的順序計算各算力節點的預計算任務;
4、根據所述各算力節點的預計算任務分配所述用戶的總計算任務。
5、在一個實施例中,所述根據算力網絡中各算力節點的計算性能、網絡性能以及用戶的時延需求,按照各算力節點單位價格由低到高的順序計算各算力節點的預計算任務,包括:
6、獲取所述算力網絡中的目標算力節點;所述目標算力節點是單位價格最低的算力節點;
7、根據所述目標算力節點的剩余可用算力、剩余可用帶寬以及用戶的最大時延,得到所述目標算力節點的預計算文件大小;
8、將所述用戶的總計算文件大小與所述預計算文件大小的差值絕對值確定為所述用戶的總計算文件大小的更新值,并在所述算力網絡的算力節點集合中剔除所述目標算力節點后,返回獲取所述算力網絡中的目標算力節點的步驟,直至所述更新值小于或等于零,或所述算力節點集合中不存在目標算力節點,得到所述算力網絡中各算力節點的預計算文件大小。
9、在一個實施例中,所述根據所述各算力節點的預計算任務分配所述用戶的總計算任務,包括:
10、若所述更新值小于或等于零,則根據所述各算力節點的預計算文件大小分配所述用戶的總計算文件大小。
11、在一個實施例中,所述根據所述各算力節點的預計算任務分配所述用戶的總計算任務,包括:
12、若所述算力節點集合中不存在目標算力節點,且所述更新值大于零,則更換算力網絡后,返回根據算力網絡中各算力節點的計算性能、網絡性能以及用戶的時延需求,按照各算力節點單位價格由低到高的順序計算各算力節點的預計算任務的步驟,直至在更換后的算力網絡中,根據各算力節點的預計算任務分配所述用戶的總計算任務。
13、在一個實施例中,所述根據所述各算力節點的預計算任務分配所述用戶的總計算任務,包括:
14、若所述算力節點集合中不存在目標算力節點,且所述更新值大于零,則分割用戶的總計算任務,得到多個部分計算任務;
15、將所述多個部分計算任務分配至多個算力網絡中,并針對每個算力網絡,返回根據算力網絡中各算力節點的計算性能、網絡性能以及用戶的時延需求,按照各算力節點單位價格由低到高的順序計算各算力節點的預計算任務的步驟,直至在每個算力網絡中,根據各算力節點的預計算任務分配對應的部分計算任務。
16、在一個實施例中,任一算力節點的單位價格,是基于以下步驟得到的:
17、計算任一算力節點上,每單位算力價格與剩余可用算力的乘積,得到所述任一算力節點的算力價格;
18、計算所述任一算力節點上,每單位帶寬價格與剩余可用帶寬的乘積,得到所述任一算力節點的帶寬價格;
19、計算所述任一算力節點的算力價格與帶寬價格的加和值,得到所述任一算力節點的單位價格。
20、在一個實施例中,所述根據所述各算力節點的預計算任務分配所述用戶的總計算任務之前,包括:
21、計算任一算力節點的單位價格與預計算文件大小的乘積,得到所述任一算力節點的計算成本;
22、根據所述計算成本向所述任一算力節點支付計算費用。
23、第二方面,本技術實施例提供一種算力網絡,用于實現第一方面所述的計算任務分配方法,包括:
24、算網交易模塊,用于:獲取用戶的時延需求和總計算任務;
25、算網管理模塊,用于:獲取各算力節點的計算性能和網絡性能;
26、算網編排模塊,用于:按照各算力節點單位價格由低到高的順序獲取各算力節點,并根據所述各算力節點的預計算任務分配所述用戶的總計算任務。
27、第三方面,本技術實施例提供一種電子設備,包括處理器和存儲有計算機程序的存儲器,所述處理器執行所述程序時實現第一方面所述的計算任務分配方法的步驟。
28、第四方面,本技術實施例提供一種計算機程序產品,包括計算機程序,所述計算機程序被處理器執行時實現第一方面所述的計算任務分配方法的步驟。
29、本技術提供的計算任務分配方法及算力網絡,根據算力網絡中各算力節點的計算性能、網絡性能以及用戶的時延需求,按照各算力節點單位價格由低到高的順序計算各算力節點的預計算任務,再根據各算力節點的預計算任務分配用戶的總計算任務。由于綜合考慮了各算力節點的網絡性能、計算性能以及單位價格,對用戶的計算任務分配進行尋優,即在滿足網絡性能和計算性能的基礎上,基于交易市場的機制來選擇算力節點,并結合用戶的時延需求和計算需求,進行各算力節點的任務分配,能夠平衡各算力節點的網絡性能、計算性能和單位價格,以及用戶的時延需求和計算需求等多方因素,使用戶的計算任務更合理地匹配算力節點,從而大幅提升算力節點,特別是相對非優質算力節點的利用率,減少算力浪費,并降低用戶算力成本。