本發明專利技術實施例公開了一種實現圖形處理器虛擬化的方法與裝置,其中,該方法包括響應于遠端并發圖形應用發起的服務請求,發起多路并行應用運行指令;利用GPU硬件驅動層提供的硬件資源調用接口,并根據各路并發應用的需求對云端的GPU硬件資源進行劃分,以為每路應用分配獨立的硬件資源;基于所分配的硬件資源環境運行多路并行應用,完成各自圖形的渲染;通過路徑尋址機制獲知每路應用所使用的硬件資源地址,并基于所獲知的地址直接在硬件底層截取渲染后的輸出數據;對渲染后的輸出數據進行流化處理,并傳輸至發起各并發圖形應用的遠端用戶,以在用戶所使用的終端上直接顯示各圖形應用對應的圖形。本發明專利技術實施例能夠為弱終端提供高端圖形應用。
【技術實現步驟摘要】
實現圖形處理器虛擬化的方法與裝置
本專利技術涉及云計算基礎技術虛擬化領域,特別地,涉及一種實現圖形處理器虛擬化的方法與裝置。
技術介紹
隨著GPU(GraphicsProcessingUnit,圖形處理器)性能的不斷提高,目前已不再局限于圖形處理,其通用計算能力,在浮點運算與并行計算等方面均具有更加突出的特點,但相對于CPU(CentralProcessingUnit,中央處理單元),其在應用虛擬化方面尚不完備,難以有效支撐云計算領域。GPU相對于CPU在硬件架構上具有計算單元優勢,但其本身在虛擬化驅動支持以及多核設計方面相比成熟的CPU技術還有較大的差距,難以發揮其強大的圖形渲染能力,無法高效支撐多路圖形數據處理。虛擬化主要是指按照需求將硬件和軟件環境抽象虛擬出來,提供給操作系統和應用服務使用。主流的虛擬化技術都是以CPU硬件虛擬化為基礎,支撐虛擬運行環境,滿足普通的邏輯運算、數據存儲和用戶遠程應用交互等。從虛擬化實現層次而言,可分為基于硬件底層的完全虛擬化、基于改造操作系統控制硬件底層的準虛擬化、基于操作系統的處理機制的增添虛擬服務器功能的操作系統虛擬化、還有立足操作系統之上僅對應用運行環境進行分割的應用層虛擬化等多種。從虛擬化實現方式來看,當前主要是基于國外著名的虛擬化軟件,例如,VMware、VirtualPC、Xen、Virtuozzo/OpenVZ等,實現的功能主要是面向運算、存儲和運行普通應用,并且相對固定地為應用分配硬件資源,在應用釋放后資源仍不能被其他應用所使用。與目前GPU/顯卡的分配能力嚴重不足,難以滿足游戲等需要超強圖形數據處理能力的需求相矛盾。從業務發展角度來講,當前主流虛擬化處理機制幾乎全部都是基于數據的完全分割和硬件獨占的模式,對于政企級別應用能夠做到安全性和服務的有效保證,但對于靈活多變的互聯網應用而言,不但其成本較高,而且靈活性嚴重不足,難以滿足公眾客戶對豐富多彩的云應用的需求。從技術完善角度來講,幾乎所有的虛擬化軟件都是基于CPU虛擬化實現,針對GPU/顯卡而言處理能力很差,無法為消耗百兆以上顯存的高端增值應用提供智能服務,嚴重限制了面向公眾云應用的發展,尤其是游戲等具有超強市場前景的應用。當前,國內外廠商為了解決GPU/顯卡資源的調用,都是基于操作系統模糊調用或者采用微軟的virtualPC+RemoteFX云桌面機制等。主要的模糊調用機制,包括遠程桌面、應用層多路運行機制等。上述方法都未從根本上解決這一問題。隨著國內iTV(InteractiveTV,互動電視)用戶超千萬,如果開拓iTV市場的規模效益成為當務之急,則其中的游戲服務是最適合的業務之一。其主要障礙是市場存量終端機頂盒能力不足,無法支撐高增值服務。采用云計算技術,可以很好解決用戶終端能力較弱的缺陷,但同時帶來云端實現技術的挑戰,因此,目前急需適用于圖形數據處理的智能GPU虛擬方案來支撐業務的發展。
技術實現思路
本專利技術實施例要解決的一個技術問題是提供一種實現圖形處理器虛擬化的方法與裝置,能夠為弱終端提供良好的圖形顯示功能。本專利技術實施例提供了一種實現圖形處理器虛擬化的方法,包括響應于遠端并發圖形應用發起的服務請求,發起多路并行應用運行指令;利用圖形處理器GPU硬件驅動層提供的硬件資源調用接口,并根據各路并發應用的需求對云端的GPU硬件資源進行劃分,以為每路應用分配獨立的硬件資源;基于所分配的硬件資源環境運行多路并行應用,完成各自圖形的渲染;通過路徑尋址機制獲知每路應用所使用的硬件資源地址,并基于所獲知的地址直接在硬件底層截取渲染后的輸出數據;對渲染后的輸出數據進行流化處理,并傳輸至發起各并發圖形應用的遠端用戶,以在用戶所使用的終端上直接顯示各圖形應用對應的圖形。本專利技術實施例還提供了一種實現圖形處理器虛擬化的裝置,包括圖形應用啟動單元,用于響應于遠端并發圖形應用發起的服務請求,發起多路并行應用運行指令;硬件資源分配單元,用于利用圖形處理器GPU硬件驅動層提供的硬件資源調用接口,并根據各路并發應用的需求對云端的GPU硬件資源進行劃分,以為每路應用分配獨立的硬件資源;圖形應用運行單元,用于基于所分配的硬件資源環境運行多路并行應用,完成各自圖形的渲染;輸出數據截取單元,用于通過路徑尋址機制獲知每路應用所使用的硬件資源地址,并基于所獲知的地址直接在硬件底層截取渲染后的輸出數據;圖形數據傳輸單元,用于對渲染后的輸出數據進行流化處理,并傳輸至發起各并發圖形應用的遠端用戶,以在用戶所使用的終端上直接顯示各圖形應用對應的圖形。本專利技術實施例提供的實現圖形處理器虛擬化的方法與裝置,通過應用層直接調用底層硬件資源接口的方式來為每路應用分配獨立的硬件資源,與現有技術對調用底層硬件封裝的方式相比,顯著減少了圖形在遠端顯示的時延。同時,通過GPU底層處理技術直接在硬件底層截取各路圖形數據,在提高服務器處理速度的同時減少了圖形服務器展現對硬件資源的消耗。附圖說明此處所說明的附圖用來提供對本專利技術的進一步理解,構成本申請的一部分。在附圖中:圖1是本專利技術實現圖形處理器虛擬化的方法的一個實施例的流程示意圖。圖2是本專利技術實施例的總體功能架構示意圖。圖3是本專利技術實現圖形處理器虛擬化的方法的另一實施例的流程示意圖。圖4是本專利技術實施例實現智能GPU虛擬化的流程示意圖。圖5為本專利技術實施例進行圖形數據處理與流化的流程示意圖。圖6是本專利技術實現圖形處理器虛擬化的裝置的一個實施例的結構示意圖。圖7是本專利技術實現圖形處理器虛擬化的裝置的另一實施例的結構示意圖。具體實施方式下面參照附圖對本專利技術進行更全面的描述,其中說明本專利技術的示例性實施例。本專利技術的示例性實施例及其說明用于解釋本專利技術,但并不構成對本專利技術的不當限定。以下對至少一個示例性實施例的描述實際上僅僅是說明性的,決不作為對本專利技術及其應用或使用的任何限制。為了解決主流虛擬化技術無法實現的適用于圖形數據處理的GPU虛擬化問題,本專利技術下述實施例通過直接調用GPU硬件機制實現底層硬件和應用層貫穿的虛擬化方式來滿足云應用的智能分配GPU資源需求,能夠面向弱終端提供高端圖形互動業務,同時通過云端圖形運行數據實時提取和處理來提升服務質量和服務器效能。其中,弱終端是相對PC等能力較強的終端而言,一般CPU處理能力小于800MHz并且沒有圖形渲染能力,根本無法運行大型增值服務的終端,例如,機頂盒、可聯網的電視機等。圖1是本專利技術實現圖形處理器虛擬化的方法的一個實施例的流程示意圖。如圖1所示,該實施例可以包括以下步驟:S102,響應于遠端并發圖形應用發起的服務請求,發起多路并行應用運行指令;S104,利用GPU硬件驅動層提供的硬件資源調用接口,并根據各路并發應用的需求對云端的GPU硬件資源進行劃分,以為每路應用分配獨立的硬件資源,從根本上解決了現有虛擬機或虛擬機制無法直接控制GPU的缺陷,不僅將GPU本身能力開發最大化,而且具備采用云技術框架提供高端圖形多路并發云應用的能力,為公眾用戶和弱終端提供高端增值圖形應用服務發展奠定了底層GPU虛擬化的基礎;S106,基于所分配的硬件資源環境運行多路并行應用,完成各自圖形的渲染;S108,通過路徑尋址機制獲知每路應用所使用的硬件資源地址,并基于所獲知的地址直接在硬件底層截取渲染后的輸出數本文檔來自技高網...

【技術保護點】
一種實現圖形處理器虛擬化的方法,其特征在于,包括:響應于遠端并發圖形應用發起的服務請求,發起多路并行應用運行指令;利用圖形處理器GPU硬件驅動層提供的硬件資源調用接口,并根據各路并發應用的需求對云端的GPU硬件資源進行劃分,以為每路應用分配獨立的硬件資源;基于所分配的硬件資源環境運行所述多路并行應用,完成各自圖形的渲染;通過路徑尋址機制獲知每路應用所使用的硬件資源地址,并基于所獲知的地址直接在硬件底層截取渲染后的輸出數據;對渲染后的輸出數據進行流化處理,并傳輸至發起各并發圖形應用的遠端用戶,以在用戶所使用的終端上直接顯示各圖形應用對應的圖形。
【技術特征摘要】
1.一種實現圖形處理器虛擬化的方法,其特征在于,包括:響應于遠端并發圖形應用發起的服務請求,發起多路并發應用運行指令;利用圖形處理器GPU硬件驅動層提供的硬件資源調用接口,并根據各路并發應用的需求對云端的GPU硬件資源進行劃分,以為每路應用分配獨立的硬件資源,其中,根據多路并發應用運行指令,為相關應用構建GPU虛擬運行容器或退出為相關應用分配的GPU虛擬運行容器;基于所分配的硬件資源運行所述多路并發應用,完成各自圖形的渲染;通過路徑尋址機制獲知每路應用所使用的硬件資源地址,并基于所獲知的地址直接在硬件底層截取渲染后的輸出數據;對渲染后的輸出數據進行流化處理,并傳輸至發起各并發圖形應用的遠端用戶,以在用戶所使用的終端上直接顯示各圖形應用對應的圖形。2.根據權利要求1所述的實現圖形處理器虛擬化的方法,其特征在于,所述服務請求包括圖形應用顯示、圖形應用暫停以及圖形應用退出。3.根據權利要求2所述的實現圖形處理器虛擬化的方法,其特征在于,在服務請求為圖形應用顯示和圖形應用暫停的情況下,構建圖形應用的GPU虛擬運行容器。4.根據權利要求2所述的實現圖形處理器虛擬化的方法,其特征在于,在服務請求為圖形應用退出的情況下,釋放為圖形應用所分配的GPU虛擬運行容器。5.根據權利要求1所述的實現圖形處理器虛擬化的方法,其特征在于,為一個圖形應用分配的硬件資源處于一塊顯卡上。6.根據權利要求1所述的實現圖形處理器虛擬化的方法,其特征在于,所述方法還包括:在進行流化處理之前,根據用戶網絡條件確定圖形數據傳輸的最大幀數和碼流,并實時封裝渲染后的輸出數據。7.一種實現圖形處理器虛擬化的裝置,其特征在于,包括:圖形應用啟動單元,用于響應于遠端并發圖形應用...
【專利技術屬性】
技術研發人員:龐濤,武娟,劉曉軍,錢峰,張志健,
申請(專利權)人:中國電信股份有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。