TW201923596A - 動態分派工作及提供資源的方法、裝置及其系統 - Google Patents

動態分派工作及提供資源的方法、裝置及其系統 Download PDF

Info

Publication number
TW201923596A
TW201923596A TW106140085A TW106140085A TW201923596A TW 201923596 A TW201923596 A TW 201923596A TW 106140085 A TW106140085 A TW 106140085A TW 106140085 A TW106140085 A TW 106140085A TW 201923596 A TW201923596 A TW 201923596A
Authority
TW
Taiwan
Prior art keywords
work
resource
job
resource providing
management device
Prior art date
Application number
TW106140085A
Other languages
English (en)
Other versions
TWI641951B (zh
Inventor
周思婷
呂理鈺
Original Assignee
宏碁股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 宏碁股份有限公司 filed Critical 宏碁股份有限公司
Priority to TW106140085A priority Critical patent/TWI641951B/zh
Priority to CN201711320394.9A priority patent/CN109818880B/zh
Priority to US16/105,217 priority patent/US10802879B2/en
Priority to EP18191920.0A priority patent/EP3486774B1/en
Application granted granted Critical
Publication of TWI641951B publication Critical patent/TWI641951B/zh
Publication of TW201923596A publication Critical patent/TW201923596A/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4812Task transfer initiation or dispatching by interrupt, e.g. masked
    • G06F9/4818Priority circuits therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)
  • Debugging And Monitoring (AREA)

Abstract

一種動態分派工作的方法,上述方法包括:廣播對應一工作之工作需求至複數資源提供裝置;判斷是否接收從上述資源提供裝置其中之一所傳送的一申請請求;以及當接收從上述資源提供裝置其中之一第一資源提供裝置所傳送之上述申請請求時,分派上述工作至上述第一資源提供裝置。

Description

動態分派工作及提供資源的方法、裝置及其系統
本發明一般涉及通訊網路,且更加具體地說係有關於一種動態分派工作及提供資源的方法、裝置及其系統。
現今,像是網際網路這樣的數位電腦網路廣泛應用於商業、教育、研究以及娛樂的許多方面。由於處理大流量的需要,許多網際網路網站被設計成使用幾個或許多以多層系統為形式的伺服器或工作站。
在多層系統中,從多個伺服器或工作站中由一主要伺服器或工作站同時掌握多台從屬伺服器或工作站之資源及工作狀態。再由主要伺服器選出最佳伺服器,以分派新工作到最佳伺服器上執行。
然而,現有作法通常需要附加硬體、軟體和資料庫冗餘,其為複雜、消耗資源且需要耗時的安裝、配置和操作者訓練。此外,現有技術的系統不容易升級,且沒有達到期望的可靠性、性能改進、安全性、速度及效率。
因此,有必要提供一種動態分派工作及提供資源的方法、裝置及其系統,使主要伺服器無須一一監控每台伺服 器狀況,並且能自動將工作分派給伺服器,可節省系統負荷及增加工作分派之效率。
以下揭露的內容僅為示例性的,且不意指以任何方式加以限制。除所述說明性方面、實施方式和特徵之外,透過參照附圖和下述具體實施方式,其他方面、實施方式和特徵也將顯而易見。即,以下揭露的內容被提供以介紹概念、重點、益處及本文所描述新穎且非顯而易見的技術優勢。所選擇,非所有的,實施例將進一步詳細描述如下。因此,以下揭露的內容並不意旨在所要求保護主題的必要特徵,也不意旨在決定所要求保護主題的範圍中使用。
本發明提供一種動態分派工作及提供資源的方法、裝置及其系統。
本發明提出一種動態分派工作的方法,上述方法包括:廣播對應一工作之工作需求至複數資源提供裝置;判斷是否接收從上述資源提供裝置其中之一所傳送的一申請請求;以及當接收從上述資源提供裝置其中之一第一資源提供裝置所傳送之上述申請請求時,分派上述工作至上述第一資源提供裝置。
本發明提出一種動態分派工作的裝置,上述裝置包括:一處理單元;以及一記憶體,耦接至上述處理單元;其中上述處理單元配置用以執行儲存於上述記憶體中之一程式碼以執行:廣播對應一工作之工作需求至複數資源提供裝置;判斷是否接收從上述資源提供裝置其中之一所傳送的一申請 請求;以及當接收從上述資源提供裝置其中之一第一資源提供裝置所傳送之上述申請請求時,分派上述工作至上述第一資源提供裝置。
本發明提出一種動態提供資源的方法,用於一裝置中,上述方法包括:接收由一資源管理裝置所傳送之對應一工作的工作需求;根據上述工作需求判斷上述裝置之閒置資源是否符合上述工作需求;以及當上述裝置之閒置資源符合上述工作需求時,傳送一申請請求至上述資源管理裝置。
本發明提出一種動態提供資源的裝置,上述裝置包括:一處理單元;以及一記憶體,耦接至上述處理單元;其中上述處理單元配置用以執行儲存於上述記憶體中之一程式碼以執行:接收由一資源管理裝置所傳送之對應一工作的工作需求;根據上述工作需求判斷上述裝置之閒置資源是否符合上述工作需求;以及當上述裝置之閒置資源符合上述工作需求時,傳送一申請請求至上述資源管理裝置。
本發明提出一種動態分派工作的方法,上述方法用於包括一資源管理裝置及複數資源提供裝置之一系統中,包括:由上述資源管理裝置廣播對應一工作之工作需求至上述資源提供裝置;由每一上述資源提供裝置根據上述工作需求判斷各自資源提供裝置之閒置資源是否符合上述工作需求;由上述資源管理裝置判斷是否接收從上述資源提供裝置其中之一所傳送的一申請請求;當上述資源管理裝置接收到上述申請請求時,分派上述工作至傳送上述申請請求之一第一資源提供裝置:其中上述申請請求係當上述第一資源提供裝置根據上述工作 需求判斷上述第一資源提供裝置之閒置資源符合上述工作需求時所傳送。
本發明提出一種動態分派工作的系統,包括:一資源管理裝置;以及複數資源提供裝置,連接至上述資源管理裝置;其中由上述資源管理裝置廣播對應一工作之工作需求至上述資源提供裝置;由每一上述資源提供裝置根據上述工作需求判斷各自資源提供裝置之閒置資源是否符合上述工作需求;由上述資源管理裝置判斷是否接收從上述資源提供裝置其中之一所傳送的一申請請求;當上述資源管理裝置接收到上述申請請求時,分派上述工作至傳送上述申請請求之一第一資源提供裝置;其中上述申請請求係當上述第一資源提供裝置根據上述工作需求判斷上述第一資源提供裝置之閒置資源符合上述工作需求時所傳送。
100‧‧‧系統
110‧‧‧資源管理裝置
1102‧‧‧數據庫
120‧‧‧資源提供裝置
150‧‧‧網路
200‧‧‧訊息序列圖
S205、S210、S215、S220‧‧‧步驟
300‧‧‧訊息序列圖
S305、S310、S315、S320、S325、S330‧‧‧步驟
400‧‧‧方法
S405、S410、S415、S420、S425、S430‧‧‧步驟
500‧‧‧方法
S505、S510、S515、S520、S525、S530、S535‧‧‧步驟
600‧‧‧電子裝置
602‧‧‧處理單元
604‧‧‧記憶體
606‧‧‧虛線
608‧‧‧卸除式儲存裝置
610‧‧‧不卸除式儲存裝置
612‧‧‧通訊連接
614‧‧‧輸入設備
616‧‧‧輸出設備
620‧‧‧運算加速單元
附圖被包括以提供本揭露進一步理解且被合併並組成本揭露的一部分。附圖係說明本揭露的實施例且連同描述一起用以解釋本揭露的原理。其可理解附圖不一定按比例描繪,一些元件可以超過在實際實施方式的大小來顯示,以清楚地說明本揭露的概念。
第1圖係顯示根據本發明一實施例中動態分派工作的系統架構的示例性示意圖。
第2圖係顯示根據本發明一實施例所述之動態分派工作的訊息序列圖。
第3圖係顯示根據本發明一實施例所述之動態分派工作的 訊息序列圖。
第4圖係顯示根據本揭露一實施例中一種動態分派工作的方法之流程圖。
第5圖係顯示根據本揭露一實施例中一種動態提供資源的方法之流程圖。
第6圖係顯示根據本揭露一實施例中一示例性操作環境。
在下文中將參考附圖對本揭露的各方面進行更充分的描述。然而,本揭露可以具體化成許多不同形式且不應解釋為侷限於貫穿本揭露所呈現的任何特定結構或功能。相反地,提供這些方面將使得本揭露周全且完整,並且本揭露將給本領域技術人員充分地傳達本揭露的範圍。基於本文所教導的內容,本領域的技術人員應意識到,無論是單獨還是結合本揭露的任何其它方面實現本文所揭露的任何方面,本揭露的範圍旨在涵蓋本文中所揭露的任何方面。例如,可以使用本文所提出任意數量的裝置或者執行方法來實現。另外,除了本文所提出本揭露的多個方面之外,本揭露的範圍更旨在涵蓋使用其它結構、功能或結構和功能來實現的裝置或方法。應可理解,其可透過申請專利範圍的一或多個元件具體化本文所揭露的任何方面。
詞語「示例性」在本文中用於表示「用作示例、實例或說明」。本揭露的任何方面或本文描述為「示例性」的設計不一定被解釋為優選於或優於本揭露或設計的其他方面。此外,相同的數字在所有若干圖示中指示相同的元件,且除非 在描述中另有指定,冠詞「一」和「上述」包含複數的參考。
第1圖係顯示根據本發明一實施例中動態分派工作的系統100架構的示例性示意圖。如第1圖所示,系統100係可包括一資源管理裝置110及複數資源提供裝置120。
資源管理裝置110及複數資源提供裝置120可以是能夠經由一網路(例如,如第1圖中所描述的網路150)通訊和/或能夠顯示網頁或其他類型電子檔案的任何其他電子裝置,像是電腦、可使用網際網路的行動電話、伺服器等裝置。值得注意的是,儘管資源提供裝置120之數目在第1圖中係以三個裝置作為例子,但本發明不應被限制於此。
在此實施例中,系統100還可包括網路150。網路150可以是本領域技術人員所熟悉任何類型的網路,其可使用各種通訊上可用協定中的任一種來支援數據通訊,包括但不侷限於TCP/IP等等。
舉例來說,網路150可為一本地區域網路(Local Area Network,LAN),像是乙太網路等等、一虛擬網路,包括但不侷限於虛擬專用網路(Virtual Private Network,VPN)、網際網路(Internet)、無線網路和/或這些和/或其他網路之任何組合。
資源管理裝置110可透過網路150與資源提供裝置120通訊。資源管理裝置110可提供一使用者上傳工作,並分派工作至資源提供裝置120。此外,資源管理裝置110可維護一數據庫1102,其可記錄每一使用者所上傳之工作等資訊。
第2圖係顯示根據本發明一實施例所述之動態分 派工作的訊息序列圖200,其係描述第1圖中資源管理裝置110如何分派工作至資源提供裝置120之流程。
在流程開始前,資源管理裝置可先接收一使用者上傳之工作。在接收使用者上傳的工作後,在步驟S205中,主要伺服器110可廣播對應此工作之工作需求至資源提供裝置120,其中對應此工作之工作需求可至少包括一中央處理單元(Central Processing Unit,CPU)數量、一中央處理單元與運算加速單元(Compute Accelerator)之親和性(Affinity)、一運算加速單元數量、一運算加速單元拓樸(Topology)、一儲存容量、一記憶體容量及一工作優先權。在一實施例中,對應此工作之工作優先權可由使用者或由資源管理裝置110所賦予。
在每一資源提供裝置120接收工作需求後,在步驟S210中,根據工作需求判斷各自資源提供裝置120之閒置(idle)資源是否符合工作需求。當每一資源提供裝置120判斷各自資源提供裝置120之閒置資源符合工作需求時,則分別傳送一申請請求至資源管理裝置110。
在此實施例中,已假設資源提供裝置120中之一第一資源提供裝置先傳送一申請請求至資源管理裝置110。在步驟S215中,資源管理裝置110接收從第一從屬伺服器所傳送之申請請求。在步驟S220中,資源管理裝置110分派此工作至第一資源提供裝置,並忽略之後從其他資源提供裝置所接收的申請請求。
第3圖係顯示根據本發明一實施例所述之動態分派工作的訊息序列圖300,其係描述第1圖中資源管理裝置110 如何分派工作至資源提供裝置120之流程。
在流程開始前,資源管理裝置110可先接收一使用者上傳之工作。在接收使用者上傳的工作後,在步驟S305中,資源管理裝置110可廣播對應此工作之工作需求至資源提供裝置120,其中對應此工作之工作需求可至少包括一中央處理單元數量、一中央處理單元與運算加速單元之親和性、一運算加速單元數量、一運算加速單元拓樸、一儲存容量、一記憶體容量及一工作優先權。在一實施例中,對應此工作之工作優先權可由使用者或由資源管理裝置110所賦予。
在每一資源提供裝置120接收工作需求後,在步驟S310中,根據工作需求判斷各自資源提供裝置120之閒置資源是否符合工作需求。在此實施例中,已假設每一資源提供裝置120之閒置資源均不符合工作需求。
在步驟S315中,每一資源提供裝置120判斷各自資源提供裝置之一資源規格是否符合工作需求及各自資源提供裝置之一健康狀態是否良好。更詳細地說明,資源規格係指在資源提供裝置中無運作任何工作的情況下資源提供裝置的資源。換言之,資源提供裝置之資源規格不符合工作需求即表示在資源提供裝置中無運作任何工作的情況下,資源提供裝置的資源仍無法滿足工作需求。例如,中央處理單元數量不足、儲存容量不足等等。健康狀態係代表資源提供裝置的性能和/或狀態相關的參數。進一步舉例,在一實施例中,資源提供裝置可以獲得裝置溫度、裝置壽命、電壓供應狀態或任何其它合適的參數。當上述參數不滿足資源提供裝置所預設之至少一參數 標準時,資源提供裝置判斷健康狀態不佳。
當資源提供裝置120中之一第二資源提供裝置之資源規格符合工作需求且健康狀態良好時,取得目前運作於第二資源提供裝置中每一工作的工作權重分數,加總工作權重分數為一工作權重分數總和。每一工作的工作權重分數表示如下:工作權重分數=優先權×資料量其中每一工作之優先權係可由使用者所指定,或由資源管理裝置110分派工作時所賦予。優先權的數值越大,則代表優先權越大。而資料量係為運行第二資源提供裝置中每一工作所佔用之資料量,其資料量單位為十億位元組(Giga Byte,GB)。在步驟S320中,第二資源提供裝置傳送第二資源提供裝置之工作權重分數總和至資源管理裝置110。
同樣地,當資源提供裝置120中之一第三資源提供裝置之資源規格符合工作需求且健康狀態良好時,在步驟S320中,第三資源提供裝置傳送第三資源提供裝置之工作權重分數總和至資源管理裝置110,其細節亦如前之第二資源提供裝置所述,在此不再贅述。
以下將更詳細地說明第二資源提供裝置及第三資源提供裝置如何取得各自之工作權重分數總和。表格1及表格2係為分別在第二資源提供裝置及第三資源提供裝置中運作之工作。
如表格1及表格2所示,第二資源提供裝置之工作權重分數總和係為600,第三資源提供裝置之工作權重分數總和係為1100。因此,在步驟S320中,第二資源提供裝置傳送第二資源提供裝置之工作權重分數總和600至資源管理裝置110,而第三資源提供裝置傳送第三資源提供裝置之工作權重分數總和1100至資源管理裝置110。
在資源管理裝置110接收第二及第三資源提供裝置所傳送之工作權重分數總和後,在步驟S325中,資源管理裝置110選出具有一最小工作權重分數總和之一資源提供裝置。在此實施例中,具有一最小工作權重分數總和之一資源提供裝置係為第二資源提供裝置。因此,在步驟S330中,資源管理裝置110分派工作至第二資源提供裝置。
在此實施例中,當資源提供裝置120中之一第一資源提供裝置之資源規格不符合工作需求或健康狀態不佳時,在步驟S320中,回報一狀態資訊至資源管理裝置110(以虛線表示),其中上述狀態資訊係用以通知資源管理裝置110資源提供裝置120之資源規格不符合或資源提供裝置120之健康狀態不佳,以使資源管理裝置110可追蹤及維護資源提供裝置120之狀態。
第4圖係顯示根據本揭露一實施例中一種動態分派工作的方法400之流程圖。此方法可用於第1圖系統100中之資源管理裝置110,用以動態分派工作至資源提供裝置。
在流程開始前,資源管理裝置可先接收一使用者上傳之工作。在步驟S405中,資源管理裝置廣播對應此工作之工作需求至複數資源提供裝置。接著,在步驟S410中,資源管理裝置判斷是否接收從上述資源提供裝置其中之一所傳送的一申請請求。當判斷接收從上述從屬伺服器其中之一第一資源提供裝置所傳送之申請請求時(在步驟S410中的「是」),在步驟S415中,資源管理裝置分派上述工作至第一資源提供裝置。
當判斷未從上述資源提供裝置其中之一接收申請請求時(在步驟S410中的「否」),在步驟S420中,資源管理裝置接收上述資源提供裝置所傳送之工作權重分數總和。在步驟S425中,資源管理裝置選出具有一最小工作權重分數總和之一第二資源提供裝置。在步驟S430中,資源管理裝置分派上述工作至第二資源提供裝置。
第5圖係顯示根據本揭露一實施例中一種動態提 供資源的方法500之流程圖。此方法可用於第1圖系統100中之資源提供裝置120其中之一。
在步驟S505中,資源提供裝置接收由一資源管理裝置所傳送之對應一工作的工作需求,其中上述工作需求係至少包括一中央處理單元數量、一中央處理單元與運算加速單元之親和性、一運算加速單元數量、一運算加速單元拓樸、一儲存容量、一記憶體容量及一工作優先權。
在步驟S510中,資源提供裝置根據工作需求判斷資源提供裝置之閒置資源是否符合工作需求。當資源提供裝置之閒置資源符合工作需求時(在步驟S510中的「是」),在步驟S515中,資源提供裝置傳送一申請請求至資源管理裝置。
當資源提供裝置之閒置資源不符合工作需求時(在步驟S510中的「否」),在步驟S520中,資源提供裝置判斷資源提供裝置之一資源規格是否符合工作需求及資源提供裝置之一健康狀態是否良好。當資源提供裝置之資源規格符合工作需求且健康狀態良好時(在步驟S520中的「是」),在步驟S525中,資源提供裝置取得目前運作於資源提供裝置中每一工作的工作權重分數,加總上述工作權重分數為一工作權重分數總和。在步驟S530中,資源提供裝置傳送上述工作權重分數總和至資源管理裝置。
當資源提供裝置之資源規格不符合工作需求或健康狀態不佳時(在步驟S520中的「否」),在步驟S535中,資源提供裝置傳送一狀態資訊至資源管理裝置,其中上述狀態資訊係用以通知資源管理裝置,資源提供裝置之資源規格不符合或 資源提供裝置之健康狀態不佳,以使資源管理裝置可追蹤及維護資源提供裝置之狀態。
對於本發明已描述的實施例,下文描述了可以實現本發明實施例的示例性操作環境。具體參考第6圖,第6圖係顯示用以實現本發明實施例的示例性操作環境,一般可被視為電子裝置600。電子裝置600僅為一合適計算環境的一個示例,並不意圖暗示對本發明使用或功能範圍的任何限制。電子裝置600也不應被解釋為具有與所示元件任一或組合相關任何的依賴性或要求。
如第6圖所示,電子裝置600可以是第1圖動態分派工作的系統100中之資源管理裝置110或資源提供裝置120。以下描述旨在提供對可用其實現這樣的系統的合適的電子裝置的簡要、一般的描述。電子裝置可以是各種通用或專用計算硬體設定的任何計算硬體設定。可能適合公知的電子裝置的示例包括但不限於,遊戲控制台、機上盒、個人電腦、掌上型或膝上型設備(例如,媒體播放機、筆記本電腦、蜂窩形電話、個人資料助理、話音記錄器)、伺服器電腦、多處理單元系統、基於微處理單元的系統、可程式設計消費電子產品、網路PC、微型電腦、大型電腦、包括任何以上系統或設備的分散式運算環境等等。
參考第6圖,在其基本的配置中,示例性電子裝置600包括至少一處理單元602和記憶體604。電子裝置可具有多個處理單元602。處理單元602可包括相互獨立操作的一個或多個處理核心(圖未顯示)。附加的協同處理單元,像是運算加 速單元(Compute Accelerator)620,也被提供。取決於電子裝置的配置和類型,記憶體604可以是易揮發性的(像是RAM)、非易揮發性的(像是ROM、快閃記憶體等)或是兩者的某種組合。該配置在第6圖中由虛線606示出。
電子裝置600可具有附加特徵和功能。例如,電子裝置600還可包含附加儲存(可移動和/或不可移動),包括但不侷限於磁片、光碟或磁帶。這種附加儲存在第6圖中用卸除式儲存裝置608和不卸除式儲存裝置610示出。電腦儲存介質包括以用於儲存諸如電腦程式指令、資料結構、程式模組或其它資料等資訊的任何方法或技術來實現的易揮發性和非易揮發性、可移動和不可移動介質。記憶體604、卸除式儲存裝置608和不卸除式儲存裝置610皆是電腦儲存介質的示例。電腦儲存介質包括但不侷限於,隨機存取記憶體(Random Access Memory,RAM)、唯讀記憶體(Read-Only Memory,ROM)電子抹除式可複寫唯讀記憶(EEPROM)、快閃記憶體或其它記憶體技術、CD-ROM、數位多功能光碟(DVD)或其它光學儲存、磁帶盒、磁帶、磁片儲存或其它磁性存放裝置。儲存介質是其中資料可被儲存並由電子裝置從可定址物理儲存位置檢索的任何介質。
電子裝置600還可包含通訊連接612,其允許設備通過通訊介質與其它設備進行通信。通訊介質通常以諸如載波或其他傳輸機制等已調製資料信號來承載電腦程式指令、資料結構、程式模組或其他資料,並包括任意資訊遞送介質。術語「已調製資料信號」指的是其一個或多個特徵以在信號中編碼 資訊的方式被設定或更改,從而改變了信號的接收設備的配置或狀態的信號。作為示例而非限制,通訊介質包括諸如有線網路或直接線連接之類的有線介質,以及像是聲學、RF、紅外線及其他無線介質之類的無線介質。通訊連接612是與通訊介質進行對接以通過通訊介質傳輸資料或從通訊介質接收資料的設備,像是網路介面。
電子裝置600可具有各種輸入設備614,如鍵盤、滑鼠、筆、相機、觸摸輸入設備等。還可包括諸如顯示驅動器、揚聲器、印表機等輸出設備616。所有這些設備在本領域是已知的並且在此不必詳述。各種輸入和輸出設備可實現自然使用者介面(Natural User Interface,NUI),其是使得用戶能夠以「自然」方式與設備交互而無需由諸如滑鼠、鍵盤、遙控等強加的人為約束的任何介面技術。
自然使用者介面方法的示例可包括依賴於語音辨識、觸摸和指示筆識別、螢幕上和螢幕附近的姿勢識別、空中姿勢、頭部和眼睛跟蹤、話音和語音、視覺、觸摸、姿勢、以及機器智慧的那些方法,並可包括使用觸敏顯示器、話音和語音辨識、意圖和目的理解、使用深度相機(如立體相機系統、紅外相機系統、和其它相機系統、以及這些的組合)的運動姿勢檢測、使用加速度計或陀螺儀的運動姿勢檢測、面部識別、三維顯示、頭部、眼睛和注視跟蹤、浸入式增強現實和虛擬實境系統,所有這些都提供更自然的介面,以及用於使用電場傳感電極(EEG和相關方法)傳感大腦活動的技術。
在電子裝置上操作的該系統的每個元件通常由諸 如一或多個電腦程式的軟體來實現,一或多個電腦程式包括電腦可執行指令和/或電腦解釋的指令,像是由電腦處理的程式模組。一般而言,程式模組包括在由處理單元處理時指令處理單元執行特定任務或實現特定抽象資料類型的常式、程式、物件、元件、資料結構等等。該電腦系統可以在任務由通過通信網路連結的遠端處理設備來執行的分散式運算環境中實現。在分散式運算環境中,程式模組可以位於包括記憶體存放裝置的本地和遠端電腦儲存介質兩者中。
作為替換或補充,本文所述的功能可至少部分地由一個或多個硬體邏輯元件來執行。例如、但非限制,可使用的硬體邏輯元件的說明性類型包括現場可程式化閘陣列(Field-Programmable Gate Array,FPGA)、特殊應用積體電路(Application-specific Integrated Circuit、ASIC)、程式專用的標準產品(Application-specific Standard Product,ASSP)、系統單晶片(System on Chip,SOC)、複雜可程式邏輯裝置(Complex Programmable Logic Device,CPLD)等等。
此外,在上述示例性裝置中,儘管上述方法已在使用一系列步驟或方框之流程圖的基礎上描述,但本發明不侷限於這些步驟的順序,並且一些步驟可不同於其餘步驟的順序執行或其餘步驟可同時進行。舉例而言,資源提供裝置可先判斷判斷資源提供裝置之一資源規格是否符合工作需求及資源提供裝置之一健康狀態是否良好,再根據工作需求判斷資源提供裝置之閒置資源是否符合工作需求。替代地,資源提供裝置也可同時判斷資源提供裝置之閒置資源是否符合工作需求、資 源提供裝置之一資源規格是否符合工作需求及資源提供裝置之一健康狀態是否良好。此外,本領域的技術人士將理解在流程圖中所示的步驟並非唯一的,其可包括流程圖的其他步驟,或者一或多個步驟可被刪除而不會影響本發明的範圍。
如上所述,藉由本發明所提出之一種動態分派工作及提供資源的方法、裝置及其系統,資源管理裝置無須分別判斷每台資源提供裝置之狀況,只需提出工作需求,並藉由資源提供裝置各自評估狀態及計算工作權重分數,即可自動完成分派工作之任務,減低資源管理裝置運作負擔及增加工作分派之效率。
在申請專利範圍中用以修飾元件之「第一」、「第二」、「第三」等序數詞之使用本身未暗示任何優先權、優先次序、各元件之間之先後次序、或方法所執行之步驟之次序,而僅用作標識來區分具有相同名稱(具有不同序數詞)之不同元件。
雖然本揭露已以實施範例揭露如上,然其並非用以限定本案,任何熟悉此項技藝者,在不脫離本揭露之精神和範圍內,當可做些許更動與潤飾,因此本案之保護範圍當視後附之申請專利範圍所界定者為準。

Claims (22)

  1. 一種動態分派工作的方法,上述方法包括:廣播對應一工作之工作需求至複數資源提供裝置;判斷是否接收從上述資源提供裝置其中之一所傳送的一申請請求;以及當接收從上述資源提供裝置其中之一第一資源提供裝置所傳送之上述申請請求時,分派上述工作至上述第一資源提供裝置。
  2. 如申請專利範圍第1項所述之動態分派工作的方法,更包括:當判斷未從上述資源提供裝置其中之一接收上述申請請求時,接收上述資源提供裝置所傳送之工作權重分數總和;選出具有一最小工作權重分數總和之一第二資源提供裝置;以及分派上述工作至上述第二資源提供裝置。
  3. 一種動態分派工作的裝置,上述裝置包括:一處理單元;以及一記憶體,耦接至上述處理單元;其中上述處理單元配置用以執行儲存於上述記憶體中之一程式碼以執行:廣播對應一工作之工作需求至複數資源提供裝置;判斷是否接收從上述資源提供裝置其中之一所傳送的一申請請求;以及當接收從上述資源提供裝置其中之一第一資源提供裝置 所傳送之上述申請請求時,分派上述工作至上述第一資源提供裝置。
  4. 如申請專利範圍第3項所述之動態分派工作的裝置,其中上述處理單元更執行上述程式碼以執行:當判斷未從上述資源提供裝置其中之一接收上述申請請求時,接收上述資源提供裝置所傳送之工作權重分數總和;選出具有一最小工作權重分數總和之一第二資源提供裝置;以及分派上述工作至上述第二資源提供裝置。
  5. 一種動態提供資源的方法,用於一裝置中,上述方法包括:接收由一資源管理裝置所傳送之對應一工作的工作需求;根據上述工作需求判斷上述裝置之閒置資源是否符合上述工作需求;以及當上述裝置之閒置資源符合上述工作需求時,傳送一申請請求至上述資源管理裝置。
  6. 如申請專利範圍第5項所述之動態提供資源的方法,更包括:當上述裝置之閒置資源不符合上述工作需求時,判斷上述裝置之一資源規格是否符合上述工作需求及上述裝置之一健康狀態是否良好;以及當上述資源規格符合上述工作需求且上述健康狀態良好時,取得目前運作於上述裝置中每一工作的工作權重分數,加 總上述工作權重分數為一工作權重分數總和;以及傳送上述工作權重分數總和至上述資源管理裝置。
  7. 如申請專利範圍第6項所述之動態提供資源的方法,其中每一工作的工作權重分數表示如下:工作權重分數=優先權×資料量其中每一工作之優先權係由上述資源管理裝置所分配,而上述資料量係為上述裝置運行每一工作所佔用之資料量。
  8. 如申請專利範圍第5項所述之動態提供資源的方法,其中上述工作需求係至少包括一中央處理單元(Central Processing Unit,CPU)數量、一中央處理單元與運算加速單元(Compute Accelerator)之親和性(Affinity)、一運算加速單元數量、一運算加速單元拓樸(Topology)、一儲存容量及一記憶體容量。
  9. 一種動態提供資源的裝置,上述裝置包括:一處理單元;以及一記憶體,耦接至上述處理單元;其中上述處理單元配置用以執行儲存於上述記憶體中之一程式碼以執行:接收由一資源管理裝置所傳送之對應一工作的工作需求;根據上述工作需求判斷上述裝置之閒置資源是否符合上述工作需求;以及當上述裝置之閒置資源符合上述工作需求時,傳送一申請請求至上述資源管理裝置。
  10. 如申請專利範圍第9項所述之動態提供資源的裝置,其中上述處理單元更執行上述程式碼以執行:當上述裝置之閒置資源不符合上述工作需求時,判斷上述裝置之一資源規格是否符合上述工作需求及上述裝置之一健康狀態是否良好;以及當上述資源規格符合上述工作需求且上述健康狀態良好時,取得目前運作於上述裝置中每一工作的工作權重分數,加總上述工作權重分數為一工作權重分數總和;以及傳送上述工作權重分數總和至上述資源管理裝置。
  11. 如申請專利範圍第10項所述之動態提供資源的裝置,其中每一工作的工作權重分數表示如下:工作權重分數=優先權×資料量其中每一工作之優先權係由上述資源管理裝置所分配,而上述資料量係為運行在上述裝置中每一工作所佔用之資料量。
  12. 如申請專利範圍第9項所述之動態提供資源的裝置,其中上述工作需求係至少包括一中央處理單元(Central Processing Unit,CPU)數量、一中央處理單元與運算加速單元(Compute Accelerator)之親和性(Affinity)、一運算加速單元數量、一運算加速單元拓樸(Topology)、一儲存容量及一記憶體容量。
  13. 一種動態分派工作的方法,上述方法用於包括一資源管理裝置及複數資源提供裝置之一系統中,包括:由上述資源管理裝置廣播對應一工作之工作需求至上述資源提供裝置; 由每一上述資源提供裝置根據上述工作需求判斷各自資源提供裝置之閒置資源是否符合上述工作需求;由上述資源管理裝置判斷是否接收從上述資源提供裝置其中之一所傳送的一申請請求;當上述資源管理裝置接收到上述申請請求時,分派上述工作至傳送上述申請請求之一第一資源提供裝置:其中上述申請請求係當上述第一從屬伺服器根據上述工作需求判斷上述第一資源提供裝置之閒置資源符合上述工作需求時所傳送。
  14. 如申請專利範圍第13項所述之動態分派工作的方法,更包括:當上述資源管理裝置判斷未從上述資源提供裝置其中之一接收上述申請請求時,接收上述資源提供裝置所傳送之工作權重分數總和;選出具有一最小工作權重分數總和之一第二資源提供裝置;以及分派上述工作至上述第二資源提供裝置。
  15. 如申請專利範圍第13項所述之動態分派工作的方法,上述方法更包括:當上述資源提供裝置中之一第三資源提供裝置之閒置資源不符合上述工作需求時,判斷上述第三資源提供裝置之一資源規格是否符合上述工作需求及上述第三資源提供裝置之一健康狀態是否良好;以及當上述資源規格符合上述工作需求且上述健康狀態良好 時,取得目前運作於上述第三資源提供裝置中每一工作的工作權重分數,加總上述工作權重分數為一工作權重分數總和;以及由上述第三資源提供裝置傳送上述工作權重分數總和至上述資源管理裝置。
  16. 如申請專利範圍第15項所述之動態分派工作的方法,其中每一工作的工作權重分數表示如下:工作權重分數=優先權×資料量其中每一工作之優先權係由上述資源管理裝置所分配,而上述資料量係為運行在上述第三資源提供裝置中每一工作所佔用之資料量。
  17. 如申請專利範圍第13項所述之動態分派工作的方法,其中上述工作需求係至少包括一中央處理單元(Central Processing Unit,CPU)數量、一中央處理單元與運算加速單元(Compute Accelerator)之親和性(Affinity)、一運算加速單元數量、一運算加速單元拓樸(Topology)、一儲存容量及一記憶體容量。
  18. 一種動態分派工作的系統,包括:一資源管理裝置;以及複數資源提供裝置,連接至上述資源管理裝置;其中由上述資源管理裝置廣播對應一工作之工作需求至上述資源提供裝置;由每一上述資源提供裝置根據上述工作需求判斷各自資源提供裝置之閒置資源是否符合上述工作需求;由上述資源管理裝置判斷是否接收從上述資源提供裝置其中 之一所傳送的一申請請求;當上述資源管理裝置接收到上述申請請求時,分派上述工作至傳送上述申請請求之一第一資源提供裝置;其中上述申請請求係當上述第一資源提供裝置根據上述工作需求判斷上述第一資源提供裝置之閒置資源符合上述工作需求時所傳送。
  19. 如申請專利範圍第18項所述之動態分派工作的系統,其中當上述資源管理裝置判斷未從上述資源提供裝置其中之一接收上述申請請求時,接收上述資源提供裝置所傳送之工作權重分數總和;上述資源管理裝置選出具有一最小工作權重分數總和之一第二資源提供裝置;以及上述主要伺服器分派上述工作至上述第二資源提供裝置。
  20. 如申請專利範圍第18項所述之動態分派工作的系統,當上述資源提供裝置中之一第三資源提供裝置之閒置資源不符合上述工作需求時,上述第三資源提供裝置判斷上述第三資源提供裝置之一資源規格是否符合上述工作需求及上述第三資源提供裝置之一健康狀態是否良好;以及當上述資源規格符合上述工作需求且上述健康狀態良好時,上述第三資源提供裝置取得目前運作於上述第三資源提供裝置中每一工作的工作權重分數,加總上述工作權重分數為一工作權重分數總和;以及由上述第三資源提供裝置傳送上述工作權重分數總和至上述資源管理裝置。
  21. 如申請專利範圍第20項所述之動態分派工作的系統,其中每一工作的工作權重分數表示如下:工作權重分數=優先權×資料量 其中每一工作之優先權係由上述資源管理裝置所分配,而上述資料量係為運行在上述第三資源提供裝置中每一工作所佔用之資料量。
  22. 如申請專利範圍第18項所述之動態分派工作的方法,其中上述工作需求係至少包括一中央處理單元(Central Processing Unit,CPU)數量、一中央處理單元與運算加速單元(Compute Accelerator)之親和性(Affinity)、一運算加速單元數量、一運算加速單元拓樸(Topology)、一儲存容量及一記憶體容量。
TW106140085A 2017-11-20 2017-11-20 動態分派工作及提供資源的方法、裝置及其系統 TWI641951B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
TW106140085A TWI641951B (zh) 2017-11-20 2017-11-20 動態分派工作及提供資源的方法、裝置及其系統
CN201711320394.9A CN109818880B (zh) 2017-11-20 2017-12-12 动态分派工作及提供资源的方法、装置及其系统
US16/105,217 US10802879B2 (en) 2017-11-20 2018-08-20 Method and device for dynamically assigning task and providing resources and system thereof
EP18191920.0A EP3486774B1 (en) 2017-11-20 2018-08-31 Method and device for dynamically assigning task and providing resources and system thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW106140085A TWI641951B (zh) 2017-11-20 2017-11-20 動態分派工作及提供資源的方法、裝置及其系統

Publications (2)

Publication Number Publication Date
TWI641951B TWI641951B (zh) 2018-11-21
TW201923596A true TW201923596A (zh) 2019-06-16

Family

ID=65034336

Family Applications (1)

Application Number Title Priority Date Filing Date
TW106140085A TWI641951B (zh) 2017-11-20 2017-11-20 動態分派工作及提供資源的方法、裝置及其系統

Country Status (4)

Country Link
US (1) US10802879B2 (zh)
EP (1) EP3486774B1 (zh)
CN (1) CN109818880B (zh)
TW (1) TWI641951B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7141905B2 (ja) * 2018-10-12 2022-09-26 株式会社日立産機システム コントロール装置及びコントロール方法
KR20200084707A (ko) * 2019-01-03 2020-07-13 삼성전자주식회사 태스크 분산 처리를 관리하는 마스터 장치, 태스크를 처리하는 태스크 처리 장치, 및 그 동작 방법
CN112685167A (zh) * 2019-10-17 2021-04-20 伊姆西Ip控股有限责任公司 资源使用方法、电子设备和计算机程序产品
US11675631B2 (en) * 2020-09-29 2023-06-13 Kyndryl, Inc. Balancing mainframe and distributed workloads based on performance and costs

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9081613B2 (en) * 2010-11-02 2015-07-14 International Business Machines Corporation Unified resource manager providing a single point of control
US20120284383A1 (en) * 2011-05-06 2012-11-08 International Business Machines Corporation Cloud workload management with automated workload bidding
TW201338537A (zh) * 2012-03-09 2013-09-16 Ind Tech Res Inst 動態派工錄影系統與方法
US10382279B2 (en) * 2014-06-30 2019-08-13 Emc Corporation Dynamically composed compute nodes comprising disaggregated components
TWI510931B (zh) * 2014-08-27 2015-12-01 Inst Information Industry 用於一叢集運算系統之主裝置、從屬裝置及其運算方法
CN104869654B (zh) * 2015-04-07 2018-06-19 北京邮电大学 一种资源调配系统、基站、设备及方法
TWI592874B (zh) * 2015-06-17 2017-07-21 康齊科技股份有限公司 網路伺服系統
US10896064B2 (en) * 2017-03-27 2021-01-19 International Business Machines Corporation Coordinated, topology-aware CPU-GPU-memory scheduling for containerized workloads

Also Published As

Publication number Publication date
TWI641951B (zh) 2018-11-21
US10802879B2 (en) 2020-10-13
EP3486774B1 (en) 2022-04-13
EP3486774A1 (en) 2019-05-22
CN109818880A (zh) 2019-05-28
CN109818880B (zh) 2022-08-30
US20190155652A1 (en) 2019-05-23

Similar Documents

Publication Publication Date Title
US11704144B2 (en) Creating virtual machine groups based on request
TWI641951B (zh) 動態分派工作及提供資源的方法、裝置及其系統
EP3652645B1 (en) Graphical rendering using multiple graphics processors
US9780998B2 (en) Method and apparatus for managing physical network interface card, and physical host
JP4740897B2 (ja) 仮想ネットワーク構成方法及びネットワークシステム
WO2018024059A1 (zh) 一种虚拟化网络中业务部署的方法和装置
JP2015001828A (ja) 割当プログラム、割当装置および割当方法
CN110635944A (zh) 一种集群网络配置方法、装置及电子设备和存储介质
CN111338745B (zh) 一种虚拟机的部署方法、装置及智能设备
WO2016183799A1 (zh) 一种硬件加速方法以及相关设备
JP2017531844A (ja) リアル・タイム・プロビジョニングのための動的更新ストリーム
WO2017211260A1 (zh) 一种访问数据的方法及相关设备
CN110727511A (zh) 应用程序的控制方法、网络侧设备和计算机可读存储介质
JP2014167713A (ja) 情報処理装置、情報処理システム、情報処理装置管理プログラム及び情報処理装置管理方法
CN115766336A (zh) 资源分配方法、装置、设备及存储介质
CN108268300B (zh) 一种虚拟机的迁移方法及装置
JP7279174B2 (ja) データ処理方法、装置、機器および記憶媒体
US20150120815A1 (en) Remote multi-client accommodating system and host computer
KR102064466B1 (ko) 가상화 시스템에서의 가상 데스크톱을 할당하는 방법 및 그 가상화 시스템
JP6870390B2 (ja) 仮想基盤にもとづくシステムにおけるリソース割当方法、接続管理サーバおよび接続管理プログラム
JP6478618B2 (ja) トランザクション制御システム、トランザクション制御方法及びプログラム
JP2023083757A (ja) ストレージ管理システム、及びストレージシステムの管理方法
US9953299B2 (en) Systems and methods for sharing image data
CN114816765A (zh) 一种云计算资源分配方法、装置、存储介质及电子设备
CN116530057A (zh) 使用局域网作为边缘云的服务的方法和装置