處理圖形運(yùn)算負(fù)載平衡的方法及系統(tǒng)的制作方法
【專利摘要】提供一種處理圖形運(yùn)算負(fù)載平衡的方法及系統(tǒng)。該處理圖形運(yùn)算負(fù)載平衡的方法用于一系統(tǒng)中,系統(tǒng)包括伺服器端裝置及用戶端裝置。該方法包括:藉由一虛擬機(jī)器接收一具有多個(gè)物件的圖形及一處理圖形能力信息;藉由一排程分配器根據(jù)上述處理圖形能力信息分配上述物件;藉由一伺服器端圖形處理器接收上述排程分配器所分配的一第一組物件,并將上述第一組物件轉(zhuǎn)碼為一第一影音串流;藉由一虛擬桌面視圖器接收上述排程分配器所分配的一第二組物件;藉由一用戶端圖形處理器將第二組物件轉(zhuǎn)碼為一第二影音串流;以及藉由上述虛擬桌面視圖器呈現(xiàn)第一影音串流及第二影音串流。
【專利說明】處理圖形運(yùn)算負(fù)載平衡的方法及系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種處理圖形運(yùn)算負(fù)載平衡的方法及系統(tǒng),特別是涉及一種用于在伺服器端裝置及用戶端裝置間達(dá)到處理圖形運(yùn)算負(fù)載平衡的方法及系統(tǒng)。
【背景技術(shù)】
[0002]目前信息科技(Information Technology, IT)驅(qū)使伺服器上的運(yùn)算基礎(chǔ)設(shè)施更加地強(qiáng)化,并利用整合式供應(yīng)設(shè)施來產(chǎn)生全虛擬化的資料中心。在一全虛擬化資料中心當(dāng)中,虛擬機(jī)器(Virtual Machine, VM)及一超級(jí)監(jiān)督管理器(Hypervisor)被配置在一伺服器內(nèi),虛擬機(jī)器執(zhí)行作業(yè)系統(tǒng)及應(yīng)用,而超級(jí)監(jiān)督管理器為一虛擬機(jī)器監(jiān)視器或虛擬化平臺(tái),可允許多個(gè)作業(yè)系統(tǒng)同時(shí)在一主機(jī)計(jì)算機(jī)上運(yùn)作。因?yàn)閿?shù)個(gè)視覺化相關(guān)的工作負(fù)荷需要2D/3D圖形硬體加速,若2D/3D圖形運(yùn)算均由伺服器端處理時(shí),則會(huì)增加云端機(jī)房的成本與耗電。倘若2D/3D圖形運(yùn)算用戶端來執(zhí)行時(shí),則必須考慮到用戶端的處理能力。
[0003]因此,需要一種處理圖形運(yùn)算負(fù)載平衡的方法與系統(tǒng),使得2D/3D圖形運(yùn)算工作可由伺服器端及用戶端來分擔(dān)。
【發(fā)明內(nèi)容】
[0004]本發(fā)明提供一種處理圖形運(yùn)算負(fù)載平衡的方法及系統(tǒng)。
[0005]本發(fā)明提供實(shí)施例的一種處理圖形運(yùn)算負(fù)載平衡的方法,用于一系統(tǒng)中,上述系統(tǒng)包括一伺服器端裝置及一用戶端裝置,該方法包括:藉由上述伺服器端裝置的一虛擬機(jī)器接收一具有多個(gè)物件的圖形及一處理圖形能力信息;藉由上述伺服器端裝置的一排程分配器根據(jù)上述處理圖形能力信息分配上述物件;藉由上述伺服器端裝置的一伺服器端圖形處理器接收上述排程分配器所分配的一第一組物件,并將上述第一組物件轉(zhuǎn)碼為一第一影音串流;藉由上述用戶端裝置的一虛擬桌面視圖器接收上述排程分配器所分配的一第二組物件;藉由上述用戶端裝置的一用戶端圖形處理器將上述第二組物件轉(zhuǎn)碼為一第二影音串流;以及藉由上述虛擬桌面視圖器呈現(xiàn)上述第一影音串流及上述第二影音串流。
[0006]本發(fā)明還提供實(shí)施例的一種處理圖形運(yùn)算負(fù)載平衡的系統(tǒng)。該系統(tǒng)包括一伺服器端裝置及一用戶端裝置。上述伺服器端裝置耦接至上述用戶端裝置,包括一虛擬機(jī)器、一虛擬圖形處理器及一伺服器端圖形處理器。其中,上述虛擬圖形處理器耦接至上述虛擬機(jī)器且包括一排程分配器。上述虛擬機(jī)器接收一具有多個(gè)物件的圖形及一處理圖形能力信息。上述排程分配器根據(jù)上述處理圖形能力信息分配上述物件。上述伺服器端圖形處理器耦接至虛擬圖形處理器,用以接收上述排程分配器所分配的一第一組物件,并將上述第一組物件轉(zhuǎn)碼為一第一影音串流。上述用戶端裝置包括一虛擬桌面視圖器及一用戶端圖形處理器。上述虛擬桌面視圖器用以接收排程分配器所分配的一第二組物件。上述用戶端圖形處理器用以將上述第二組物件轉(zhuǎn)碼為一第二影音串流。其中上述伺服器端圖形處理器及上述用戶端圖形處理器分別將上述第一組物件及上述第二組物件轉(zhuǎn)碼為上述第一影音串流及上述第二影音串流后,傳送上述第一影音串流及上述第二影音串流至上述虛擬桌面視圖器來呈現(xiàn)。
[0007]為使本發(fā)明的上述和其他目的、特征和優(yōu)點(diǎn)能更明顯易懂,下文特舉出較佳實(shí)施例,并結(jié)合附圖詳細(xì)說明如下。
【專利附圖】
【附圖說明】
[0008]圖1顯示本發(fā)明一實(shí)施例的處理圖形運(yùn)算負(fù)載平衡的系統(tǒng)架構(gòu)示意圖;
[0009]圖2A顯示本發(fā)明一實(shí)施例的處理圖形運(yùn)算負(fù)載平衡的系統(tǒng)方塊圖;
[0010]圖2B顯示本發(fā)明另一實(shí)施例的處理圖形運(yùn)算負(fù)載平衡的系統(tǒng)方塊圖;
[0011]圖3顯示根據(jù)本發(fā)明一實(shí)施例的處理圖形運(yùn)算負(fù)載平衡的方法流程圖;
[0012]圖4A?4B顯示根據(jù)本發(fā)明一實(shí)施例的處理圖形運(yùn)算負(fù)載平衡的例子。
[0013]附圖符號(hào)說明
[0014]100 ?系統(tǒng);
[0015]110?伺服器端裝置;
[0016]120?用戶端裝置;
[0017]130 ?網(wǎng)絡(luò);
[0018]200 ?系統(tǒng);
[0019]210?伺服器端裝置;
[0020]212?虛擬機(jī)器;
[0021]213?超級(jí)監(jiān)督管理器;
[0022]214?虛擬圖形處理器;
[0023]216?排程分配器;
[0024]218?伺服器端圖形處理器;
[0025]220?用戶端裝置;
[0026]222?虛擬桌面視圖器;
[0027]224?用戶端圖形處理器;
[0028]226?影音幀緩沖器;
[0029]300?方法流程圖;
[0030]S302、S304、S306、S308 ?步驟;
[0031]400 ?屏幕;
[0032]410 ?區(qū)域;
[0033]A、B、C、D ?物件。
【具體實(shí)施方式】
[0034]為使本發(fā)明的目的、特征、及優(yōu)點(diǎn)能更明顯易懂,下文特舉較佳實(shí)施例,并結(jié)合附圖示圖1至圖4B,做詳細(xì)說明。本發(fā)明說明書提供不同的實(shí)施例來說明本發(fā)明不同實(shí)施方式的技術(shù)特征。其中,實(shí)施例中的各元件的配置是為說明之用,并非用以限制本發(fā)明。且實(shí)施例中附圖標(biāo)號(hào)的部分重復(fù),是為了簡(jiǎn)化說明,并非意指不同實(shí)施例之間的關(guān)聯(lián)性。
[0035]下文以數(shù)個(gè)實(shí)施例分別說明本發(fā)明的處理圖形運(yùn)算的系統(tǒng)及其方法流程。
[0036]圖1顯示本發(fā)明一實(shí)施例的處理圖形運(yùn)算負(fù)載平衡的系統(tǒng)100架構(gòu)示意圖。如圖I所示,系統(tǒng)100包括一伺服器端裝置110及一個(gè)或多個(gè)用戶端裝置120。伺服器端裝置110通過網(wǎng)絡(luò)130與一個(gè)或多個(gè)用戶端裝置120相耦接。網(wǎng)絡(luò)130可為一私有網(wǎng)絡(luò)(例如,一區(qū)域網(wǎng)絡(luò)(Local Area Network, LAN)、廣域網(wǎng)絡(luò)(Wide Area Network, WAN)、企業(yè)網(wǎng)絡(luò)(Intranet)等)或一公用網(wǎng)絡(luò)(例如,乙太網(wǎng)絡(luò))。
[0037]在一實(shí)施例中,用戶端裝置120可為具有廣泛功能的計(jì)算機(jī)裝置。一些客戶端裝置120可以是精簡(jiǎn)型計(jì)算機(jī)(Thin Client),作為用戶存取終端。精簡(jiǎn)型客戶端裝置具有有限的處理能力和存儲(chǔ)能力。例如,一精簡(jiǎn)型客戶端裝置可以是膝上型計(jì)算機(jī)(LaptopComputer)、個(gè)人數(shù)字助理(Personal Digital Assistant, PDA)、桌上型計(jì)算機(jī)(DesktopPC)、筆記型計(jì)算機(jī)(Notebook)、平板計(jì)算機(jī)(Tablet PC)、手機(jī)(Mobile Phone)等裝置。另一些客戶端裝置120中則具有圖形處理器、強(qiáng)大的中央處理器(Central Processing Unit,CPU)及大容量的存儲(chǔ)體。例如,一雙核或多核計(jì)算機(jī)、工作站、圖形工作站等裝置。必須注意的是,以上所述的一個(gè)或多個(gè)用戶端裝置數(shù)量、規(guī)格等限制,并不局限于本發(fā)明圖示及說明書的內(nèi)容所示。
[0038]圖2A-2B顯示本發(fā)明一實(shí)施例的處理圖形運(yùn)算負(fù)載平衡的系統(tǒng)200的方塊圖。如圖2A-2B所示,伺服器端裝置210包括一虛擬機(jī)器212 (Virtual Machine, VM)、一虛擬圖形處理器214及一伺服器端圖形處理器218。虛擬圖形處理器214耦接至上述虛擬機(jī)器212及伺服器端圖形處理器218。虛擬圖形處理器214還包括一排程分配器216。用戶端裝置220包括一虛擬桌面視圖器222、一用戶端圖形處理器224及一影音幀緩沖器226。
[0039]當(dāng)用戶端裝置220與伺服器端裝置210連接時(shí),用戶端裝置220將會(huì)傳送一處理圖形能力信息至伺服器端裝置210。虛擬機(jī)器212用以接收由伺服器端裝置210后端(例如,服務(wù)端)所傳送的一具有多個(gè)物件的圖形及用戶端裝置220所傳送的處理圖形能力信息。其中圖形是一 2D圖形或一 3D圖形。處理圖形能力信息可為用戶端裝置120的處理能力、伺服器端裝置210的處理能力、伺服器端圖形處理器218的加速性能(Graphic ProcessingUnit Acceleration)、儲(chǔ)存速度及連接頻寬等信息。在接收此具有多個(gè)物件的圖形及處理圖形能力信息后,虛擬機(jī)器212將圖形及處理圖形能力信息傳送至虛擬圖形處理器214中的排程分配器216中。排程分配器216根據(jù)處理圖形能力信息分配圖形中的物件需傳送至伺服器端圖形處理器218、用戶端裝置220中的用戶端圖形處理器224或兩者都需傳送。
[0040]伺服器端圖形處理器218接收排程分配器216所分配的一第一組物件后,將第一組物件轉(zhuǎn)碼為一第一影音串流并傳送至虛擬桌面視圖器222中。而用戶端裝置220的虛擬桌面視圖器222用以接收排程分配器216所分配的一第二組物件,并傳送至用戶端圖形處理224。用戶端圖形處理器224在接收第二組物件后,將第二組物件轉(zhuǎn)碼為一第二影音串流。用戶端圖形處理器224再將第二影音串流儲(chǔ)存在影音幀緩沖器226,并傳送至虛擬桌面視圖器222中。最后,由虛擬桌面視圖器呈現(xiàn)所接收的第一影音串流及第二影音串流。
[0041]在另一具體實(shí)施例中,伺服器端裝置210還包括一超級(jí)監(jiān)督管理器(Hypervisor) 213,如圖2B所示。當(dāng)虛擬機(jī)器212需要存取影音幀緩沖器226的影音串流時(shí)(例如,一使用者按下「擷取屏幕畫面(Print Screen)」的按鍵時(shí)),虛擬機(jī)器212會(huì)傳送的一存取要求訊息至超級(jí)監(jiān)督管理器中。當(dāng)超級(jí)監(jiān)督管理器接收存取要求訊息時(shí),超級(jí)監(jiān)督管理器依據(jù)存取要求訊息要求虛擬桌面視圖器222將影音幀緩沖器226中所儲(chǔ)存的影音串流傳送至伺服器端圖形處理器218中。伺服器端圖形處理器218會(huì)將影音幀緩沖器226中所儲(chǔ)存的影音串流與原本伺服器端圖形處理器218所處理的影音串流組合起來,并得到完整的影音串流。
[0042]圖3顯示根據(jù)本發(fā)明一實(shí)施例的處理圖形運(yùn)算負(fù)載平衡的方法流程圖300,并請(qǐng)參考圖2A-2B。依據(jù)本發(fā)明實(shí)施例的處理圖形運(yùn)算的方法可以適用于一系統(tǒng)中。
[0043]如步驟S302,一虛擬機(jī)器接收一具有多個(gè)物件的圖形及一處理圖形能力信息。在步驟S304中,一排程分配器根據(jù)處理圖形能力信息分配此圖形的多個(gè)物件。接著,在步驟S306中,一伺服器端圖形處理器接收排程分配器所分配的一第一組物件,并將第一組物件轉(zhuǎn)碼為一第一影音串流。而一用戶端圖形處理器藉由一虛擬桌面視圖器接收排程分配器所分配的一第二組物件,并將第二組物件轉(zhuǎn)碼為一第二影音串流。最后,在步驟S308中,虛擬桌面視圖器呈現(xiàn)第一影音串流及第二影音串流。
[0044]在另一實(shí)施例中,用戶端裝置的處理能力信息為用戶端裝置所能處理的一畫面顯示比例。舉例來說,圖4A?4B顯示根據(jù)本發(fā)明一實(shí)施例的處理圖形運(yùn)算負(fù)載平衡的例子,并請(qǐng)參閱圖2A-2B。圖4A顯示一用戶端裝置的顯示畫面大小為640X480的屏幕400。如圖4A所示,屏幕400的顯示畫面被劃分為80X80大小的小視窗(Tile)。因此,640 X 480的屏幕400會(huì)被分為48個(gè)小視窗。而排程分配器根據(jù)所接收的用戶端裝置所能處理的一畫面顯示比例計(jì)算用戶端裝置在某個(gè)應(yīng)用下只能處理24個(gè)小視窗的圖形運(yùn)算,并利用一最佳化演算法決定用戶端裝置只負(fù)責(zé)處理一區(qū)域410,使得網(wǎng)絡(luò)傳輸量可達(dá)到最小化。
[0045]在此例子中,圖形總共有AB⑶四個(gè)物件,如圖4B所示。排程分配器經(jīng)過計(jì)算后,發(fā)現(xiàn)物件A及物件B在Z軸的次序會(huì)直接影響此區(qū)域410的呈現(xiàn)結(jié)果。因此,排程分配器優(yōu)先將物件A及物件B與相關(guān)指令傳送到用戶端裝置。物件C因不會(huì)影響到區(qū)域410,所以由伺服器端裝置來處理。而物件D在Z軸的次序較為后段且目前完全被物件A及物件B所遮蔽,因此也由伺服器端裝置來做處理。但是,一旦物件C或物件D改變位置且足以影響到區(qū)域410時(shí),排程分配器則會(huì)將物件C或物件D復(fù)制或轉(zhuǎn)移至用戶端裝置來處理。
[0046]在另一些實(shí)施例中,排程分配器還可利用用戶端裝置與伺服器端裝置之間的連接頻寬來做為根據(jù)分配圖形的多個(gè)物件的依據(jù)。
[0047]由上述可知,藉由此處理圖形運(yùn)算的方法及系統(tǒng),用戶端裝置中的用戶端圖形處理器僅需處理圖形中一部分的物件及相關(guān)指令,且以較少的小視窗呈現(xiàn)。網(wǎng)絡(luò)也可僅傳送部分物件,而伺服器裝置中的伺服器端圖形處理器只需處理補(bǔ)足用戶端裝置不足的部分即可。
[0048]本發(fā)明的方法,或特定型態(tài)或其部份,可以以程序碼的型態(tài)存在。程序碼可以包含于實(shí)體媒體,如軟盤、光盤片、硬盤、或是任何其他電子設(shè)備或機(jī)器可讀取(如計(jì)算機(jī)可讀取)儲(chǔ)存媒體,亦或不限于外在形式的計(jì)算機(jī)程序產(chǎn)品,其中,當(dāng)程序碼被機(jī)器,如計(jì)算機(jī)載入且執(zhí)行時(shí),此機(jī)器變成用以參與本發(fā)明的裝置或系統(tǒng),且可執(zhí)行本發(fā)明的方法步驟。程序碼也可以通過一些傳送媒體,如電線或電纜、光纖、或是任何傳輸型態(tài)進(jìn)行傳送,其中,當(dāng)程序碼被電子設(shè)備或機(jī)器,如計(jì)算機(jī)接收、載入且執(zhí)行時(shí),此機(jī)器變成用以參與本發(fā)明的系統(tǒng)或裝置。當(dāng)在一般用途處理單元實(shí)作時(shí),程序碼結(jié)合處理單元提供一操作類似于應(yīng)用特定邏輯電路的獨(dú)特裝置。
[0049]雖然本發(fā)明已以較佳實(shí)施例揭示如上,然其并非用以限定本發(fā)明,本領(lǐng)域的技術(shù)人員,在不脫離本發(fā)明的精神和范圍的前提下,可作各種的更動(dòng)與潤飾,因此本發(fā)明的保護(hù)范圍是以本發(fā)明的權(quán)利要求為準(zhǔn)。
【權(quán)利要求】
1.一種達(dá)到處理圖形運(yùn)算負(fù)載平衡的方法,用于一系統(tǒng)中,上述系統(tǒng)包括一伺服器端裝置及一用戶端裝置,該方法包括: 藉由上述伺服器端裝置的一虛擬機(jī)器接收一具有多個(gè)物件的圖形及一處理圖形能力信息; 藉由上述伺服器端裝置的一排程分配器根據(jù)上述處理圖形能力信息分配上述物件;藉由上述伺服器端裝置的一伺服器端圖形處理器接收上述排程分配器所分配的一第一組物件,并將上述第一組物件轉(zhuǎn)碼為一第一影音串流; 藉由上述用戶端裝置的一虛擬桌面視圖器接收上述排程分配器所分配的一第二組物件; 藉由上述用戶端裝置的一用戶端圖形處理器將上述第二組物件轉(zhuǎn)碼為一第二影音串流;以及 藉由上述虛擬桌面視圖器呈現(xiàn)上述第一影音串流及上述第二影音串流。
2.如權(quán)利要求1所述的達(dá)到處理圖形運(yùn)算負(fù)載平衡的方法,還包括: 藉由一影音幀緩沖器儲(chǔ)存上述第二影音串流。
3.如權(quán)利要求2所述的達(dá)到處理圖形運(yùn)算負(fù)載平衡的方法,還包括: 藉由一超級(jí)監(jiān)督管理器接收上述虛擬機(jī)器所傳送的一存取要求訊息; 其中當(dāng)接收到上述存取要求訊息時(shí),上述超級(jí)監(jiān)督管理器依據(jù)上述存取要求訊息要求上述虛擬桌面視圖器將上述影音幀緩沖器中的上述第二影音串流傳送至上述伺服器端圖形處理器中。
4.如權(quán)利要求1所述的達(dá)到處理圖形運(yùn)算負(fù)載平衡的方法,其中上述處理圖形能力信息為上述用戶端裝置 的處理能力、上述伺服器端裝置的處理能力、上述伺服器端圖形處理器的加速性能、儲(chǔ)存速度及連接頻寬。
5.如權(quán)利要求4所述的達(dá)到處理圖形運(yùn)算負(fù)載平衡的方法,其中上述用戶端裝置的處理能力為上述用戶端裝置所能處理的一畫面顯示比例。
6.如權(quán)利要求1所述的在伺服器端裝置及用戶端裝置間達(dá)到處理圖形運(yùn)算負(fù)載平衡的方法,其中上述圖形是一 2D圖形或一 3D圖形。
7.一種達(dá)到處理圖形運(yùn)算負(fù)載平衡的系統(tǒng),包括: 一伺服器端裝置,包括: 一虛擬機(jī)器,用以接收一具有多個(gè)物件的圖形及一處理圖形能力信息; 一虛擬圖形處理器,耦接至上述虛擬機(jī)器,包括: 一排程分配器,根據(jù)上述處理圖形能力信息分配上述物件; 一伺服器端圖形處理器,耦接至上述虛擬圖形處理器,用以接收上述排程分配器所分配的一第一組物件,并將上述第一組物件轉(zhuǎn)碼為一第一影音串流;以及一用戶端裝置,耦接于上述伺服器端裝置,上述用戶端裝置包括: 一虛擬桌面視圖器,用以接收上述排程分配器所分配的一第二組物件;以及 一用戶端圖形處理器,用以將上述第二組物件轉(zhuǎn)碼為一第二影音串流; 其中上述伺服器端圖形處理器及上述用戶端圖形處理器分別將上述第一組物件及上述第二組物件轉(zhuǎn)碼為上述第一影音串流及上述第二影音串流后,傳送上述第一影音串流及上述第二影音串流至上述虛擬桌面視圖器來呈現(xiàn)。
8.如權(quán)利要求7所述的達(dá)到處理圖形運(yùn)算負(fù)載平衡的系統(tǒng),上述用戶端裝置還包括: 一影音幀緩沖器,用以儲(chǔ)存上述第二影音串流。
9.如權(quán)利要求8所述的達(dá)到處理圖形運(yùn)算負(fù)載平衡的系統(tǒng),上述伺服器端裝置還包括: 一超級(jí)監(jiān)督管理器,用以接收上述虛擬機(jī)器所傳送的一存取要求訊息; 其中當(dāng)接收到上述存取要求訊息時(shí),上述超級(jí)監(jiān)督管理器依據(jù)上述存取要求訊息要求上述虛擬桌面視圖器將上述影音幀緩沖器中的上述第二影音串流傳送至上述伺服器端圖形處理器中。
10.如權(quán)利要求7所述的達(dá)到處理圖形運(yùn)算負(fù)載平衡的系統(tǒng),其中上述處理圖形能力信息為上述用戶端裝置的處理能力、上述伺服器端裝置的處理能力、上述伺服器端圖形處理器的加速性能、儲(chǔ)存速度及連接頻寬。
11.如權(quán)利要求10所述的達(dá)到處理圖形運(yùn)算負(fù)載平衡的系統(tǒng),其中上述用戶端裝置的處理能力為上述用戶端裝置所能處理的一畫面顯示比例。
12.如權(quán)利要求7所述的達(dá)到處理圖形運(yùn)算負(fù)載平衡的系統(tǒng),其中上述圖形是一2D圖形或一 3D圖形。
【文檔編號(hào)】H04L12/803GK103778591SQ201210430111
【公開日】2014年5月7日 申請(qǐng)日期:2012年11月1日 優(yōu)先權(quán)日:2012年10月18日
【發(fā)明者】賴怡吉, 尤焙麟 申請(qǐng)人:緯創(chuàng)資通股份有限公司