[發明專利]基于有向無環圖的任務調度方法、系統、設備及存儲介質有效
| 申請號: | 202210249950.2 | 申請日: | 2022-03-14 |
| 公開(公告)號: | CN114625507B | 公開(公告)日: | 2023-01-03 |
| 發明(設計)人: | 曾贊達;滕州;羅文杰;盧樹文;周偉杰;譚彪榮 | 申請(專利權)人: | 廣州經傳多贏投資咨詢有限公司 |
| 主分類號: | G06F9/48 | 分類號: | G06F9/48 |
| 代理公司: | 北京維正專利代理有限公司 11508 | 代理人: | 俞振明 |
| 地址: | 511400 廣東省廣州市番禺區東環*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 無環圖 任務 調度 方法 系統 設備 存儲 介質 | ||
本申請公開了一種基于有向無環圖的任務調度方法、系統、設備及存儲介質,所述基于有向無環圖的任務調度方法包括:將一項總任務劃分為若干可獨立執行的最小單元作為任務節點;基于有向無環圖確定各任務節點的依賴關系,并根據依賴關系確定各任務節點對應的執行次序,以便基于所述執行次序為各任務節點分配工作線程;本申請具有提高存在大量數據依賴時多線程計算的效率的效果。
技術領域
本申請涉及計算機任務調度的技術領域,尤其是涉及一種基于有向無環圖的任務調度方法、系統、設備及存儲介質。
背景技術
在金融領域,常常需要利用計算機進行大量的數據運算,一般來說,對于一組任務,可以使用多核處理器的硬件優勢,將任務分發到不同的核心中執行,線程池也自然而然地成為了通用的任務調度組件,在線程池中,用戶通過接口將任務放入池中,線程池的調度線程會分配一個工作線程來執行被投入的任務,但是,線程池無法以用戶特定的順序來執行任務,只能隨機調度。
而金融數據的計算往往是伴隨著大量的數據依賴,當用戶拿到一組基礎數據,需要計算若干個衍生數據時,基礎數據往往無法直接用于計算衍生數據,而是需要計算出一組中間數據,然后再由中間數據計算衍生數據,如果采用傳統的多線程方案,就會存在大量的線程同步問題,因為用戶只能通過添加任何線程同步邏輯的方式來組織數據的運算次序,若用戶無法在多線程計算中描述任務的依賴關系,則只能使用單線程進行計算,計算的速度就會大幅下降。
針對上述相關技術,發明人認為存在難以在不添加線程同步邏輯的情況下描述任務的執行次序的問題。
發明內容
為了提高存在大量數據依賴時多線程計算的效率,本申請提供一種基于有向無環圖的任務調度方法、系統、設備及存儲介質。
本申請的發明目的一采用如下技術方案實現:
一種基于有向無環圖的任務調度方法,包括:
將一項總任務劃分為若干可獨立執行的最小單元作為任務節點;
基于有向無環圖確定各任務節點的依賴關系,并根據依賴關系確定各任務節點對應的執行次序,以便基于所述執行次序為各任務節點分配工作線程。
通過采用上述技術方案,將一項總任務劃分為若干可獨立執行的最小單元作為任務節點,便于將總任務進行最大程度的細化,以便充分發揮計算機多線程工作的優勢,提高總任務的完成效率;根據一項總任務所劃分的若干任務節點創建有向無環圖,從而獲取每一任務節點對應的依賴關系,以確定各任務節點的執行次序,以便后續根據各任務節點的執行次序為各任務節點分配工作線程執行各任務節點,為各任務節點的順利執行提供保障,以防各任務節點的執行順序錯誤導致任務無法執行或者執行結果錯誤。
本申請在一較佳示例中:基于有向無環圖確定各任務節點的依賴關系,并根據依賴關系確定各任務節點對應的執行次序的步驟中,具體包括:
獲取用戶上傳的目標任務節點并判斷所述目標任務節點有無依賴于其他任務節點;
若所述目標任務節點無依賴于其他任務節點,則添加所述目標任務節點并設定為最先執行;
若所述目標任務節點有依賴于其他任務節點,則添加所述目標任務節點并基于所述目標任務節點的依賴關系確定執行次序。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于廣州經傳多贏投資咨詢有限公司,未經廣州經傳多贏投資咨詢有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202210249950.2/2.html,轉載請聲明來源鉆瓜專利網。





