本文作者:kaifamei

一種基于邊緣計算的深度學習推理任務調度方法與流程

更新時間:2025-12-28 01:06:39 0條評論

一種基于邊緣計算的深度學習推理任務調度方法與流程



1.本發明涉及邊緣計算領域,具體涉及一種基于邊緣計算的深度學習推理任務調度方法。


背景技術:



2.隨著深度學習的發展,基于深度神經網絡(dnn)的應用成為了人們日常生活中不可或缺的一部分。深度學習推理精確度越來越高,深度神經網絡的規模也越來越大,設備終端資源有限,無法完成延遲需求較高的大規模神經網絡推理任務。同時,終端設備突增帶來的數據爆炸現象使得云計算解決方案難以維持。5g與邊緣計算的發展,使得低延遲的深度學習推理任務成為可能。高質量的深度學習推理服務不僅要求較高的推理精度,而且需要滿足不同的時延需求。考慮到多任務多邊緣服務器場景下,由于不同任務對延遲、資源等需求不同,邊緣服務器簇需要進行合理的協同任務調度以滿足不同用戶的需求。傳統的任務調度算法,如max-min算法、min-min算法、自適應分段算法、先到先得算法和最小完成時間算法,以最小化處理延遲為目標,但是它們很容易導致節點間的負載不平衡問題。啟發式算法在邊緣任務調度中也得到應用,其主要目標是求問題的最優解,如遺傳算法、蟻優化算法、粒子優化算法等,但是無法保證解的全局最優。混合算法將多種優化算法將多種優化算法融合,以解決最優化問題,但是其執行時間過長,無法滿足延遲需求較高的服務需求。因此,在利用邊緣服務器進行深度學習推理時,如何對任務進行合理調度以滿足不同任務的需求是一個值得研究且具有實際應用價值的問題。


技術實現要素:



3.為解決上述技術問題,本發明提供一種基于邊緣計算的深度學習推理任務調度方法。
4.為解決上述技術問題,本發明采用如下技術方案:一種基于邊緣計算的深度學習推理任務調度方法,包括以下步驟:步驟一、根據邊緣服務器之間的通信時延對邊緣服務器進行分簇,得到邊緣服務器簇;邊緣服務器簇中具有p臺邊緣服務器,,根據邊緣服務器簇各邊緣服務器計算能力強弱構建邊緣服務器優先隊列,計算能力越強的邊緣服務器在邊緣服務器優先隊列中越靠前;邊緣服務器的屬性表示為:;其中表示邊緣服務器的計算能力,表示邊緣服務器的狀態,表示邊緣服務器繁忙,表示邊緣服務器空閑;表示邊緣服務器的內存大小;步驟二:當邊緣設備發出的個待處理的深度神經網絡推理任務到達邊緣服務器簇后,根據任務類型計算深度神經網絡推理任務的任務優先級,進而構建任務優先隊列;
步驟三:當邊緣服務器簇中有邊緣服務器空閑且任務優先隊列不為空時,持續判斷空閑的邊緣服務器是否能滿足任務優先隊列中隊頭的深度神經網絡推理任務的內存需求,如是,即,執行步驟三a;如否,即,執行步驟三b;直至任務優先隊列為空;其中,為屬于任務類型的深度神經網絡推理任務的內存需求,為深度神經網絡推理任務的任務類型;為邊緣服務器的內存大小;步驟三a:根據深度神經網絡推理任務的優先級進行資源分配:設為深度神經網絡推理任務的優先級閾值,為深度神經網絡推理任務的優先級,當時,深度神經網絡推理任務為緊急任務,選取邊緣服務器優先隊列中計算能力最強且空閑的邊緣服務器作為緊急任務的卸載服務器,并進行服務卸載;當時,計算深度神經網絡推理任務在邊緣服務器簇內各個邊緣服務器的運行時間,選擇邊緣服務器簇中能夠使得深度神經網絡推理任務在最遲響應時間之前完成的邊緣服務器,構建集合,為使得深度神經網絡推理任務在最遲響應時間之前完成的邊緣服務器的總數量,隨機從集合中選擇一個邊緣服務器作為卸載服務器,即,為隨機函數;深度神經網絡推理任務卸載完成以后,將從任務優先隊列中移除;步驟三b:將深度神經網絡推理任務移動至任務優先隊列的隊尾。
5.具體地,步驟一中根據邊緣服務器之間的通信時延對邊緣服務器進行分簇時,設置邊緣服務器之間的通信延遲閾值,當邊緣服務器之間的平均通信時延低于通信延遲閾值時,將邊緣服務器分為同一邊緣服務器簇。
6.具體地,步驟二中,根據任務類型計算深度神經網絡推理任務的任務優先級,進而構建任務優先隊列時,用表示待處理的深度神經網絡推理任務的集合,,第n個深度神經網絡推理任務的參數表示如下:;其中,為深度神經網絡推理任務的優先級,;為深度神經網絡推理任務需傳輸的數據量;為深度神經網絡推理任務的任務類型,,至為所有的任務類型選項;為深度神經網絡推理任務傳輸至邊緣服務器簇后處于任務調度隊列的等待時間;為深度神經網絡推理任務數據從
邊緣設備傳輸至邊緣服務器簇的鏈路傳輸帶寬;為屬于任務類型的深度神經網絡推理任務的最遲響應時間;為屬于任務類型的深度神經網絡推理任務的基礎權重,;為屬于任務類型的深度神經網絡推理任務在單位時間內的請求頻率;為屬于任務類型的深度神經網絡推理任務的內存需求。
7.具體地,步驟三a中,計算深度神經網絡推理任務在邊緣服務器簇內各個邊緣服務器的運行時間時,在邊緣服務器的運行時間計算公式如下:;邊緣服務器的運行時間為邊緣設備將深度神經網絡推理任務的數據發送至邊緣服務器的傳輸時間、任務等待時間及任務計算時間之和;其中,為數據傳輸速率極限值;表示邊緣服務器的計算能力。
8.與現有技術相比,本發明的有益技術效果是:(1)通過對不同任務類型制定不同的優先級,保證能夠滿足延遲需求較高的任務的需求。(2)另外,由于邊緣服務器與云數據中心不同,其硬件設備是千差萬別的,各個邊緣服務器的算力各不相同,根據計算能力構建邊緣服務器優先隊列,保證任務能夠在最遲響應之前完成。(3)通過設計基于優先級的改進max-min算法對任務進行調度,保證了任務的響應時間,同時,引入了優先度閾值,當任務為緊急任務時,算法會將計算能力強的邊緣服務器分配給該任務,保證了對延遲要求高的深度神經網絡推理任務能夠在最快的時間內完成推理。(4)由于深度神經網絡推理任務對計算資源需求較高,邊緣設備計算資源有限,根據傳輸時間對邊緣服務器進行分簇,劃分區域,簇內邊緣服務器共同為區域內的邊緣設備提供服務,提高了邊緣服務器的資源利用率,降低了高訪問量邊緣服務器的壓力。
9.相比于傳統的任務調度方法,本發明在最小化響應時間的同時,考慮到了邊緣服務器的負載均衡以及深度神經網絡推理任務的不同響應時間需求,方案通過更短的響應時間、負載均衡、較低的算法復雜度提供更好的推理服務。
附圖說明
10.圖1本發明基于優先級的改進max-min任務調度算法示意圖。
具體實施方式
11.下面結合附圖對本發明的一種優選實施方式作詳細的說明。
12.在邊緣計算場景下,邊緣服務器簇為其范圍內的多個用戶提供服務,邊緣服務器簇需要處理大量多類型的深度神經網絡推理任務。首先,邊緣服務器與云數據中心不同,其硬件差異千差萬別,各個邊緣服務器的芯片不同,設計芯片異構的深度神經網絡推理平臺
時,需要保證模型能夠在不同的硬件條件下正常、精確運行。其次,由于邊緣服務器簇資源、帶寬有限,對于大量不同類型的深度神經網絡推理任務需要進行合理的任務調度,本發明采用基于優先級的改進max-min算法,在保證深度學習推理系統能夠滿足不同優先度的任務的需求的同時,優化max-min算法帶來的資源利用不均衡問題,對資源進行合理調度,滿足不同深度神經網絡推理任務。調度方法具體描述如下。
13.(1)任務優先隊列構建在本發明中,將邊緣服務器分為若干邊緣服務器簇,邊緣服務器簇內的各邊緣服務器共享資源,并協同為邊緣服務器簇范圍內的用戶提供服務。由于不同的深度神經網絡推理任務對延遲、內存、計算資源等需求不同,根據服務的類型及服務協議為深度神經網絡推理任務設置任務優先級,任務優先級為重要的任務調度參數。
14.設定邊緣服務器簇共有個待處理的深度神經網絡推理任務,用表示待處理的深度神經網絡推理任務的集合,,其中。對于第n個深度神經網絡推理任務,其具體的信息參數表示如下:;其中,為深度神經網絡推理任務的優先級,;為深度神經網絡推理任務需傳輸的數據量;為深度神經網絡推理任務的任務類型,,至為所有的任務類型選項;為深度神經網絡推理任務傳輸至邊緣服務器簇后處于任務調度隊列的等待時間;為深度神經網絡推理任務數據從邊緣設備傳輸至邊緣服務器簇的鏈路傳輸帶寬;為屬于任務類型的深度神經網絡推理任務的最遲響應時間;為屬于任務類型的深度神經網絡推理任務的基礎權重,;為屬于任務類型的深度神經網絡推理任務在單位時間內的請求頻率;為屬于任務類型的深度神經網絡推理任務的內存需求。
15.深度神經網絡推理任務的優先級由任務類型、任務等待時間決定。任務類型通過任務性質決定了深度神經網絡推理任務的基礎權重,即深度神經網絡推理任務的基礎優先級;同時,深度神經網絡推理任務單位時間內的請求頻率影響任務的基礎權重,單位時間內的請求頻率越高,說明該任務類型的深度神經網絡推理任務的請求量越大,基礎權重就越高。深度神經網絡推理任務的等待時間越長,為了保證在最遲截至時間之前完成,深度神經網絡推理任務的優先級就越高。根據優先級構建任務優先隊列,當有資源空閑時更新任務優先隊列。
16.(2)邊緣服務器優先隊列構建設在邊緣服務器簇中共有p臺邊緣服務器,用表示邊緣服務器簇,則
。邊緣服務器的屬性表示為:;其中:表示邊緣服務器的計算能力;表示邊緣服務器繁忙,表示邊緣服務器空閑;表示邊緣服務器的內存大小。按照邊緣服務器簇內各邊緣服務器計算能力強弱構建邊緣服務器優先隊列,計算能力越強的邊緣服務器在邊緣服務器優先隊列中越靠前。
17.(3)任務調度算法根據深度神經網絡推理任務優先級構建任務優先隊列,當邊緣服務器簇中有邊緣服務器空閑且任務優先隊列不為空時,更新任務優先隊列,并進行任務調度,任務優先隊列中的深度神經網絡推理任務按照優先順序進行調度,位于任務優先隊列隊頭的深度神經網絡推理任務記為:若空閑的邊緣服務器不能滿足深度神經網絡推理任務的需求,則將深度神經網絡推理任務移動至優先隊列隊尾,繼續執行(3)中的任務調度算法;若空閑的邊緣服務器能夠滿足深度神經網絡推理任務的需求,則根據深度神經網絡推理任務的優先級進行資源分配:設為深度神經網絡推理任務的優先級閾值,為深度神經網絡推理任務的優先級,當時,深度神經網絡推理任務為緊急任務,選取邊緣服務器優先隊列中計算能力最強且空閑的邊緣服務器作為緊急任務的卸載服務器,并進行服務卸載,滿足 ;當時,計算深度神經網絡推理任務在邊緣服務器簇內各個邊緣服務器的運行時間,其中,在邊緣服務器的運行時間計算公式如下:;邊緣服務器的運行時間為邊緣設備將深度神經網絡推理任務的數據發送至邊緣服務器的傳輸時間、任務等待時間及任務計算時間之和。其中,當邊緣設備請求深度神經網絡推理服務時,假設邊緣服務器簇已進行任務卸載,即邊緣服務器簇中的任何邊緣服務器均部署邊緣設備請求的深度神經網絡推理服務,邊緣設備僅需將待處理的深度神經網絡推理任務數據傳輸至邊緣服務器簇即可,為數據傳輸速率極限值。選擇邊緣服務器簇中能夠使得深度神經網絡推理任務在最遲響應時間之前完成的邊緣服務器:,
其中,為使得深度神經網絡推理任務在最遲響應時間之前完成的邊緣服務器的總數量;構建集合;隨機從集合中選擇一個邊緣服務器作為卸載服務器,即,為隨機函數;深度神經網絡推理任務卸載完成以后,將從任務優先隊列中移除,并更新任務優先隊列及邊緣服務器優先隊列,繼續(3)中的任務調度算法。任務計算完成后,計算結果通過邊緣服務簇中最接近邊緣設備的邊緣服務器返回至邊緣設備。
18.實施例本發明中深度學習推理任務調度方法包括邊緣服務器分簇、任務優先隊列構建、邊緣服務器優先隊列構建、基于優先級的改進max-min任務調度;具體分為以下幾個步驟:s1、邊緣服務器分簇:本發明可以根據邊緣服務器地理位置、通信時延及綜合計算能力對邊緣服務器進行分簇,例如通過對地理區域內的邊緣服務器之間的通信時延進行測試、邊緣設備的密度以及對邊緣服務器簇的計算能力進行評估,劃分邊緣服務器簇,使得邊緣服務器簇能夠滿足簇區域內的邊緣設備的深度神經網絡推理請求。本實施例中,設置邊緣服務器之間的通信延遲閾值,當邊緣服務器之間的平均通信時延低于該閾值時(通常由按地理位置決定),將邊緣服務器分為同一簇。
19.s2、任務優先隊列構建:首先,在任務調度之前,本發明構建任務類型屬性,對不同的任務類型設定最遲響應時間、計算能力、內存需求。邊緣設備進行任務請求時,將任務類型及待處理數據傳輸至邊緣服務器簇,任務請求到達邊緣服務器簇之后,根據任務類型計算任務優先級,進而構建任務優先隊列。
20.s3、邊緣服務器優先隊列構建:對邊緣服務器進行分簇之后,邊緣服務器簇各邊緣服務器計算能力強弱構建邊緣服務器優先隊列。
21.s4、基于優先級的改進max-min任務調度:在本發明中,邊緣服務器優先隊列及任務優先隊列構建完畢之后,當邊緣服務器簇內有邊緣服務器屬于空閑狀態時,進行任務調度。任務調度時,根據優先級將深度神經網絡推理任務分為緊急任務和普通任務,選取邊緣服務器優先隊列中計算能力最強且空閑的邊緣服務器作為緊急任務的卸載服務器并進行服務卸載,隨機選擇邊緣服務器簇中能夠使普通任務在最遲響應時間之前完成的邊緣服務器作為普通任務的卸載服務器。當深度神經網絡推理任務執行完畢,將該深度神經網絡推理任務從任務優先隊列中移除,并更新任務優先隊列以及邊緣服務器優先隊列;同時,將該深度神經網絡推理任務的執行結果傳回邊緣設備。
22.對于本領域技術人員而言,顯然本發明不限于上述示范性實施例的細節,而且在不背離本發明的精神或基本特征的情況下,能夠以其他的具體形式實現本發明。因此無論從哪一點來看,均應將實施例看作是示范性的,而且是非限制性的,本發明的范圍由所附權
利要求而不是上述說明限定,因此旨在將落在權利要求的等同要件的含義和范圍內的所有變化囊括在本發明內,不應將權利要求中的任何附圖標記視為限制所涉及的權利要求。
23.此外,應當理解,雖然本說明書按照實施方式加以描述,但并非每個實施方式僅包含一個獨立技術方案,說明書的這種敘述方式僅僅是為了清楚起見,本領域技術人員應當將說明書作為一個整體,各實施例中的技術方案也可以經適當組合,形成本領域技術人員可以理解的其他實施方式。

技術特征:


1.一種基于邊緣計算的深度學習推理任務調度方法,包括以下步驟:步驟一、根據邊緣服務器之間的通信時延對邊緣服務器進行分簇,得到邊緣服務器簇;邊緣服務器簇中具有p臺邊緣服務器,,根據邊緣服務器簇各邊緣服務器計算能力強弱構建邊緣服務器優先隊列,計算能力越強的邊緣服務器在邊緣服務器優先隊列中越靠前;步驟二:當邊緣設備發出的個待處理的深度神經網絡推理任務到達邊緣服務器簇后,根據任務類型計算深度神經網絡推理任務的任務優先級,進而構建任務優先隊列;步驟三:當邊緣服務器簇中有邊緣服務器空閑且任務優先隊列不為空時,持續判斷空閑的邊緣服務器是否能滿足任務優先隊列中隊頭的深度神經網絡推理任務的內存需求,如是,即,執行步驟三a;如否,即,執行步驟三b;直至任務優先隊列為空;其中,為屬于任務類型的深度神經網絡推理任務的內存需求,為深度神經網絡推理任務的任務類型;為邊緣服務器的內存大小;步驟三a、根據深度神經網絡推理任務的優先級進行資源分配:設為深度神經網絡推理任務的優先級閾值,為深度神經網絡推理任務的優先級,當時,深度神經網絡推理任務為緊急任務,選取邊緣服務器優先隊列中計算能力最強且空閑的邊緣服務器作為緊急任務的卸載服務器,并進行服務卸載;當時,計算深度神經網絡推理任務在邊緣服務器簇內各個邊緣服務器的運行時間,選擇邊緣服務器簇中能夠使得深度神經網絡推理任務在最遲響應時間之前完成的邊緣服務器,構建集合,為使得深度神經網絡推理任務在最遲響應時間之前完成的邊緣服務器的總數量,隨機從集合中選擇一個邊緣服務器作為卸載服務器;深度神經網絡推理任務卸載完成以后,將從任務優先隊列中移除;步驟三b:將深度神經網絡推理任務移動至任務優先隊列的隊尾。2.根據權利要求1所述的基于邊緣計算的深度學習推理任務調度方法,其特征在于,步驟一中根據邊緣服務器之間的通信時延對邊緣服務器進行分簇時,設置邊緣服務器之間的通信延遲閾值,當邊緣服務器之間的平均通信時延低于通信延遲閾值時,將邊緣服務器分為同一邊緣服務器簇。3.根據權利要求1所述的基于邊緣計算的深度學習推理任務調度方法,其特征在于,步驟二中,根據任務類型計算深度神經網絡推理任務的任務優先級,進而構建任務優先隊列時,用表示待處理的深度神經網絡推理任務的集合,,第n個深度神經網絡推理任務的參數表示如下:
;其中,為深度神經網絡推理任務的優先級,;為深度神經網絡推理任務需傳輸的數據量;為深度神經網絡推理任務的任務類型,,至為所有的任務類型選項;為深度神經網絡推理任務傳輸至邊緣服務器簇后處于任務調度隊列的等待時間;為深度神經網絡推理任務數據從邊緣設備傳輸至邊緣服務器簇的鏈路傳輸帶寬;為屬于任務類型的深度神經網絡推理任務的最遲響應時間;為屬于任務類型的深度神經網絡推理任務的基礎權重,;為屬于任務類型的深度神經網絡推理任務在單位時間內的請求頻率;為屬于任務類型的深度神經網絡推理任務的內存需求。4.根據權利要求3所述的基于邊緣計算的深度學習推理任務調度方法,其特征在于,步驟三a中,計算深度神經網絡推理任務在邊緣服務器簇內各個邊緣服務器的運行時間時,在邊緣服務器的運行時間計算公式如下:;邊緣服務器的運行時間為邊緣設備將深度神經網絡推理任務的數據發送至邊緣服務器的傳輸時間、任務等待時間及任務計算時間之和;其中,為數據傳輸速率極限值;表示邊緣服務器的計算能力。

技術總結


本發明涉及邊緣計算領域,公開了一種基于邊緣計算的深度學習推理任務調度方法,包括邊緣服務器分簇、任務優先隊列構建、邊緣服務器優先隊列構建、基于優先級的改進Max-Min任務調度,在保證深度學習推理任務精確執行的同時,滿足不同優先級的任務需求。滿足不同優先級的任務需求。滿足不同優先級的任務需求。


技術研發人員:

盧漢成 楊文濤 施錢寶

受保護的技術使用者:

合肥綜合性國家科學中心人工智能研究院(安徽省人工智能實驗室)

技術研發日:

2022.12.20

技術公布日:

2023/1/19


文章投稿或轉載聲明

本文鏈接:http://m.newhan.cn/zhuanli/patent-1-83749-0.html

來源:專利查詢檢索下載-實用文體寫作網版權所有,轉載請保留出處。本站文章發布于 2023-01-28 04:38:13

發表評論

驗證碼:
用戶名: 密碼: 匿名發表
評論列表 (有 條評論
2人圍觀
參與討論