亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        GPU虛擬化技術(shù)及應(yīng)用研究

        2015-06-24 07:08:05仝伯兵楊昕吉謝振平等
        軟件導(dǎo)刊 2015年6期

        仝伯兵 楊昕吉 謝振平等

        摘要:GPU即圖形處理器,在構(gòu)建高性能計算系統(tǒng)中占有重要地位。為更好地利用GPU的計算優(yōu)勢,GPU虛擬化技術(shù)受到關(guān)注。系統(tǒng)介紹了GPU虛擬化技術(shù),并對獨占使用、設(shè)備模擬和應(yīng)用層接口等3種虛擬化技術(shù)進行了研究。從虛擬化桌面應(yīng)用、GPU通用計算虛擬化和GPU虛擬化的安全問題等方面探討了GPU虛擬化研究的需求及目標(biāo),給出了GPU虛擬化市場應(yīng)用的可行方案。

        關(guān)鍵詞:GPU虛擬化;虛擬化桌面;通用計算虛擬化

        DOIDOI:10.11907/rjdk.151107

        中圖分類號:TP393

        文獻標(biāo)識碼:A 文章編號:16727800(2015)006015304

        作者簡介作者簡介:仝伯兵(1989-),男,山東菏澤人,江南大學(xué)數(shù)字媒體學(xué)院碩士研究生,研究方向為機器學(xué)習(xí)、數(shù)據(jù)挖掘、數(shù)字圖像處理;

        謝振平(1979-),男,江蘇常州人,江南大學(xué)數(shù)字媒體學(xué)院副教授,研究方向為數(shù)據(jù)挖掘、數(shù)字圖像處理;

        梅向東(1966-),男,湖北武漢人,贊奇科技發(fā)展有限公司高級工程師,研究方向為多媒體及計算機應(yīng)用。

        1 GPU虛擬化研究意義

        GPU主要實現(xiàn)計算機的圖形呈現(xiàn),具有高性能的多處理器陣列,隨著GPU技術(shù)的發(fā)展,其在3D渲染和大規(guī)模并行計算中起著越來越重要的作用[1]。

        虛擬化技術(shù)[2]是對傳統(tǒng)計算資源使用方式的一次新突破,虛擬計算技術(shù)的引入打破了真實計算中軟件與硬件之間的緊耦合關(guān)系,為不同需求的計算系統(tǒng)架構(gòu)帶來了活力支撐,圖1給出了計算系統(tǒng)虛擬化的常見分類。目前市面上的I/O設(shè)備有成千上萬種,I/O設(shè)備的復(fù)雜性、多樣性以及封閉性等特點使其成為虛擬化技術(shù)發(fā)展的瓶頸,導(dǎo)致硬件資源不能得到充分利用,使虛擬機環(huán)境性能下降,甚至在某些情況下發(fā)生功能缺失現(xiàn)象。GPU(圖形處理器)是顯卡的主要組成部分,功能包括圖形(2D和3D)計算與通用計算兩部分。目前除去少數(shù)2D顯示標(biāo)準(zhǔn)外,國際上對顯卡的硬件電氣接口并沒有統(tǒng)一的標(biāo)準(zhǔn)和規(guī)范,各主要硬件生產(chǎn)廠家之間設(shè)備接口互不兼容。由于技術(shù)革新?lián)Q代等原因,同一廠家的不同產(chǎn)品之間兼容也不好。另外,出于商業(yè)利益,這些設(shè)計標(biāo)準(zhǔn)都是廠家的核心機密,從不對外公布設(shè)計細(xì)節(jié)和源碼,使得在操作系統(tǒng)層面適應(yīng)不同硬件的驅(qū)動協(xié)議棧開發(fā)目標(biāo)難以實現(xiàn)。目前商業(yè)級的VMware[3]以及開源的Xen[4]等主流虛擬機管理器(VMM)都只在小范圍內(nèi)解決了2D圖形顯示問題,很少涉及通用計算和3D加速這兩項GPU主要功能。在I/O虛擬化研究中,當(dāng)設(shè)備虛擬化不能在硬件電氣層實現(xiàn)時,通常采用在邏輯層對其進行模擬的方式,以網(wǎng)卡虛擬化為例,就是在傳輸層或網(wǎng)絡(luò)層完成的虛擬化。然而,在大規(guī)模數(shù)值計算時,GPU的計算效率是CPU的成百上千倍,這是CPU無法企及的?;谏鲜龇N種原因,迄今為止GPU還難以真正虛擬化。

        2 GPU虛擬化方法

        目前GPU虛擬化技術(shù)有3類:①獨占使用;②設(shè)備模擬;③應(yīng)用層接口虛擬化(API 重定向法),下面分別展開闡述。

        2.1 獨占使用

        獨占使用(VMM pass-through)是指繞過虛擬機的管理系統(tǒng),將GPU使用權(quán)直接分配給某一虛擬機,任何時刻都只有一臺虛擬機擁有GPU的使用權(quán)限。這種虛擬化方式使GPU的獨立性與完整性得以保存,而且效果與非虛擬條件下的結(jié)果差別不大,同時,能夠進行通用計算。然而,這種方式與虛擬機動態(tài)分配、資源共享的理念不符。另外,獨占使用方案兼容性不理想。以Xen VGA Passthrough[5]為例,它運用了英特爾設(shè)備虛擬[6](Intel VT-d)技術(shù),在運行時將主顯設(shè)備直接分配給某一客戶虛擬機,使宿主虛擬機和其它客戶虛擬機都沒有訪問該GPU的權(quán)限。同時,VESA 模式、 VGABIOS、IO 端口、文本模式、內(nèi)存映射這些顯卡的特殊細(xì)節(jié)在客戶虛擬機中實現(xiàn)并且能夠直接訪問。使用 Xen VGA Passthrough 技術(shù)的GPU執(zhí)行效率高、功能全,但它不具有設(shè)備復(fù)用功能,只能被單一系統(tǒng)獨占式使用,因而在實際中較少應(yīng)用。

        獨占設(shè)備法的設(shè)計思路是使原生驅(qū)動和硬件能夠被客戶操作系統(tǒng)直接使用,缺少必要的中間層維護和GPU狀態(tài)跟蹤,對實時遷移等高級特性支持不足。比如VMware在用戶文檔中明確指出:開啟VMDirectPath I/O 功能時,其對應(yīng)的虛擬機將會失去執(zhí)行實時遷移、掛起/恢復(fù)的能力,Xen Passthrough則禁止執(zhí)行 restore/ save/migration等操作。

        2.2 設(shè)備模擬

        該技術(shù)是使用CPU來模擬GPU的電氣化接口,從而實現(xiàn)GPU的功能?;谠O(shè)備模擬的GPU虛擬化在沒有物理硬件的支持下,通過純軟件的方式實現(xiàn)GPU虛擬化。由于GPU電氣單元數(shù)量龐大,出于商業(yè)利益考慮,各大廠家的GPU電氣接口細(xì)節(jié)對外是保密的,并且不同的生產(chǎn)廠家甚至同一廠家不同型號的GPU結(jié)構(gòu)差異也很大,這在很大程度上增加了設(shè)備模擬的難度。這種模擬器只是在軟件調(diào)試和硬件設(shè)計時得到應(yīng)用,并不能作為VMM中的虛擬設(shè)備使用。QEMU[7]目前具備基本2D功能的顯卡(Cirrus CLGD 5446 PCI VGA card),已經(jīng)在虛擬化系統(tǒng)廣泛應(yīng)用,但也只仿真了GPU的部分功能,如在KVM和Xen中負(fù)責(zé)虛擬化顯示設(shè)備。VMware SVGAII[8]是VMware中獨立實現(xiàn)的仿真設(shè)備,能支持2D顯示和Direct3D接口,但不支持OPENGL,且對Direct3D的支持仍然是使用API 重定向技術(shù)。

        由于在設(shè)備模擬中,設(shè)備的狀態(tài)位于內(nèi)存、CPU等VMM管理部分,其對虛擬機的某些高級特性如實時遷移等適應(yīng)性較好,虛擬機的實時遷移、系統(tǒng)快照和多路復(fù)用等功能均能拓展到GPU相關(guān)領(lǐng)域。然而使用CPU模擬方式并不能高效完成GPU的并行計算,在執(zhí)行時間上CPU是GPU的成百上千倍,導(dǎo)致實用價值較差。

        2.3 API重定向技術(shù)

        應(yīng)用接口虛擬化(API remoting,API重定向技術(shù)),是指對GPU相關(guān)的應(yīng)用程序編程接口在應(yīng)用層中進行攔截,然后使用重定向(使用GPU)或模擬(不使用GPU)方式實現(xiàn)相應(yīng)功能,將完成的結(jié)果返回給對應(yīng)的應(yīng)用程序。目前,OPENGL等傳統(tǒng)圖形API中已經(jīng)廣泛使用了API重定向虛擬化技術(shù)。

        Chromium[9]提出了一種將特定的模塊插入到OPENGL指令流中的機制,改變了OPENGL的執(zhí)行流程,從而實現(xiàn)了大規(guī)模分布式圖形呈現(xiàn)與渲染。Blink[10]項目是采用攔截OPENGL在多個客戶操作系統(tǒng)之間的復(fù)用3D顯示設(shè)備。VMware的GPU虛擬化方案則更加復(fù)雜,它結(jié)合API 重定向技術(shù)與設(shè)備仿真兩種方案特點,采用前端-后端的運行模式。前端由虛擬GPU與偽顯卡驅(qū)動構(gòu)成,位于客戶操作系統(tǒng)中;后端則由原生顯卡驅(qū)動和特殊線程MKS(Mouse-Keyboard-Screen)構(gòu)成,位于宿主操作系統(tǒng)中。當(dāng)GPU的相關(guān)指令傳遞到MKS時,MKS會按照指令類型驅(qū)動不同的功能單元,如2D圖形指令對應(yīng)X11或GDI端口,3D圖形指令對應(yīng)Direct3D或OPENGL端口。前后端之間的通信采用FIFO管道與DMA兩種傳輸模式,VMware通過設(shè)置共享內(nèi)存區(qū)域進行虛擬顯存,優(yōu)化了客戶操作系統(tǒng)與宿主操作系統(tǒng)的數(shù)據(jù)傳輸性能,減少了數(shù)據(jù)復(fù)制操作的次數(shù)。

        API重定向技術(shù)方案處理參數(shù)在API層進行,能夠管理虛擬機內(nèi)部狀態(tài)。VMware、Blink等方案對虛擬機的高級特性有不同程度的支持,如VMware實現(xiàn)了針對2D、3D應(yīng)用的快照、復(fù)用、凍結(jié)、遷移等功能,完全支持虛擬機的各種高級特性,VMGL[11]實現(xiàn)了3D應(yīng)用在虛擬機中的凍結(jié)/恢復(fù)與多路利用功能。

        通過分析,可將上述3種GPU虛擬化方法匯總為表1。API 重定向研究在通用計算與圖形計算方面成果顯著,但性能問題依然是不足之處。在將本地執(zhí)行代碼重定向到遠(yuǎn)程虛擬機執(zhí)行時會涉及大量數(shù)據(jù)的傳輸和復(fù)制,這是各種虛擬方案難以避免的問題,而采用域間通信技術(shù)是解決此問題的一種有效方法。

        3 GPU虛擬化應(yīng)用研究

        目前國內(nèi)外對GPU虛擬化研究的重點在虛擬化桌面應(yīng)用、GPU通用計算虛擬化和GPU虛擬化的安全問題等幾個方面。

        3.1 虛擬化桌面應(yīng)用

        虛擬化桌面應(yīng)用指虛擬機在物理機上提供給用戶透明的桌面使用環(huán)境,這些桌面使用環(huán)境通常具備良好的可遷移性。通常,多個被虛擬出的桌面環(huán)境要求完全隔離和平行,用戶可以將多種不同的應(yīng)用放在多個不同的虛擬桌面環(huán)境中完成。此外用戶還能在各個虛擬桌面系統(tǒng)之間快速切換,同時根據(jù)各自的需求在各虛擬桌面環(huán)境中進行快速部署、用途設(shè)定和遷移。虛擬桌面技術(shù)需要提供良好的人機交互界面能力,因為大多數(shù)的桌面應(yīng)用都需要進行頻繁的用戶交互。隨著計算機的普及,大型3D游戲、視頻播放等娛樂應(yīng)用越來越流行,對畫面顯示能力的要求也越來越高,高性能與流暢的圖形顯示能力已成為虛擬化桌面系統(tǒng)的必然要求。因此,對現(xiàn)有虛擬化技術(shù)中圖形處理性能進行創(chuàng)新或改進成為研究主流,同時對現(xiàn)有的圖形解決方案進行改進以提高虛擬化后圖形的處理性能。

        圖形處理方式包括直接采用物理顯卡和采用虛擬顯卡即GPU虛擬化方式。其中,物理顯卡的方式就是在對系統(tǒng)的資源進行整合與分配時,直接將物理顯卡的控制權(quán)重新分配給特權(quán)的虛擬機。與真實物理主機相比,這種方式使特權(quán)虛擬機可以獲得同樣的圖形效果,然而它與虛擬機動態(tài)分配、資源共享的設(shè)計理念不符,并且增加了使用成本;GPU虛擬化方式即在虛擬機操作系統(tǒng)中模擬一塊能夠進行圖形處理的物理顯卡。目前系統(tǒng)級GPU虛擬化方式實現(xiàn)包括Xen 虛擬幀緩存、VMware虛擬圖形顯示處理器GPU(Graphics Processing Unit)、虛擬網(wǎng)絡(luò)計算機VNC(Virtual Network Computing)以及獨立于虛擬機管理器的圖形加速系統(tǒng)[11]VMGL (VMM-Independent Graphics Acceleration)。虛擬化桌面系統(tǒng)的圖形加速方案通常采用GPU的API重定向虛擬化技術(shù),研究成果有GPU通用計算框架 vCUDA[12](virtual VUDA)、GPU圖形虛擬化方案VMGL以及實現(xiàn)數(shù)據(jù)高速傳輸?shù)挠蜷g通信系統(tǒng)。

        3.2 GPU通用計算虛擬化

        目前針對GPU虛擬化的研究仍處于起步階段,大多數(shù)都是針對2D、3D圖形處理,在GPU通用計算方面涉及較少。隨著GPU性能的提升,其優(yōu)秀的通用計算能力越來越顯著,與圖形計算一樣成為研究的熱點。第一個GPU通用計算專用框架CUDA于 2007 年推出。vCUDA[12]采用在用戶層攔截并重定向CUDA API的思路,在虛擬機中建立物理GPU的邏輯映像虛擬GPU,實現(xiàn)了GPU資源細(xì)粒度劃分、重組與再利用等功能,支持掛起/恢復(fù)、多機并發(fā)等虛擬機高級特性,使得在應(yīng)用層實現(xiàn)GPU通用計算虛擬化成為可能。Pegasus項目[13]則是基于Xen實現(xiàn)的虛擬機管理平臺,為了提高GPU的資源利用率,它將CPU和GPU視為統(tǒng)一協(xié)同調(diào)度資源,解決了傳統(tǒng)異構(gòu)虛擬機環(huán)境中存在的GPU資源調(diào)度失配的問題。CheCUDA[14]則借鑒了vCUDA對CUDA狀態(tài)進行管理和追蹤的思路,討論了在非虛擬化條件下實現(xiàn)CUDA狀態(tài)恢復(fù)和保存的可能性,實現(xiàn)CUDA程序中的檢查點方案。

        3.3 GPU虛擬化安全問題

        在信息爆炸的大背景下,安全性成為GPU虛擬化不容忽視的問題,關(guān)于GPU虛擬化安全計算的研究同樣處于起步階段。

        有關(guān)虛擬機的安全性研究包括:2010年Harnik[15]等人從隱蔽和側(cè)面渠道等角度解決重復(fù)數(shù)據(jù)刪除所帶來的安全隱患;2012年Wu[16]等人斷言:由于在物理內(nèi)核上分配了虛擬內(nèi)核,緩存隱蔽和側(cè)通道是不實用的,他們提出了一種新的基于總線爭用的隱蔽信道,通過使用原子操作來鎖定共享內(nèi)存總線。關(guān)于GPU特有的安全性研究有:Maurice[17]等人在基于設(shè)備獨占的 GPU 虛擬化上,分析了不同VM順序訪問同一GPU硬件可能存在的全局內(nèi)存信息泄露問題,并結(jié)合現(xiàn)存的云計算平臺研究了云環(huán)境下的GPU信息泄露問題。GPU的全局內(nèi)存清零只是糾錯碼的一個副作用,并沒有涉及安全考慮;趙冰[18]提出了基于二進制哈希樹的綁定方案,實現(xiàn)了多個vPCR與單一硬件PCR 的綁定機制,建立起了真正意義上基于硬件基礎(chǔ)的信任鏈,可大大提高GPU虛擬化平臺對惡意軟件的免疫力。

        4 GPU虛擬化解決方案

        作為先進GPU技術(shù)與應(yīng)用的提供者,NVIDIA一直致力于通過將GPU強大的計算能力引入到通用計算領(lǐng)域,來實現(xiàn)并幫助企業(yè)“加速”業(yè)務(wù)體驗和市場決策。目前,NVIDIA主要包括GeForce、Quadro、Tesla、Tegra、GRID五條產(chǎn)品線[19],可按照市場定位劃分為面向消費級市場和面向企業(yè)級市場兩大類,其中GeForce和Tegra分別定位在PC和移動市場,屬消費類產(chǎn)品;Quadro、Tesla以及GRID定位企業(yè)級市場,分別瞄準(zhǔn)的是專業(yè)圖形計算、高性能計算以及云計算市場。在企業(yè)級市場,NVIDIA先是推出Quadro專業(yè)顯卡來滿足企業(yè)的專業(yè)設(shè)計需求,再通過推出Tesla主打高性能服務(wù)器市場,并根據(jù)企業(yè)“設(shè)計+仿真”一體化需求,推出了集圖顯與計算為一體的MAXIMUS產(chǎn)品,從而可以根據(jù)用戶需求合理高效地分配計算資源,加速研發(fā)進程。市面上已有的NVidia GPU虛擬化解決方案包括GPU pass-through、vSGA、GPU Sharing、VGX,表2為以思杰為代表的GPU虛擬化解決方案分類。

        長遠(yuǎn)來看,GPU虛擬化將充分釋放GPU的并行計算能力,大幅降低企業(yè)面對諸如大數(shù)據(jù)分析、動漫設(shè)計、電影特效渲染等高性能計算需求成本,同時提升云計算應(yīng)用的服務(wù)質(zhì)量。

        5 結(jié)語

        本文對GPU虛擬化技術(shù)進行了研究與分析,介紹了GPU虛擬化的主要方法;對 虛擬化桌面應(yīng)用、GPU通用計算虛擬化和GPU虛擬化的安全問題進行了分析探討,給出了相關(guān)研究的主要需求點和目標(biāo);對GPU虛擬化市場應(yīng)用進行了梳理,給出了可行的解決方案。

        參考文獻:

        [1] 白洪濤.基于GPU的高星級并行算法研究[D].長春:吉林大學(xué),2010.

        [2] 馬秀芳,李紅巖.計算機虛擬化技術(shù)淺析[J].電腦知識與技術(shù),2010,16(33):94089412.

        [3] VMWARE. VMware workstation[EB/OL]. www.vmware.com/products/ws/.

        [4] 石磊,鄒德清,金海.Xen 虛擬化技術(shù)[M].武漢:華中科技大學(xué)出版社,2009.

        [5] XEN. Xen VGA passthrough[EB/OL].wiki.xensource.com/xenwiki/XenVGAPassthrough .

        [6] INTEL.IntelVTd[EB/OL].www.intel.com/technology/itj/2006/v10i3/2io/1abstract.htm.

        [7] BELLARD F. QEMU, a fast and portable dynamic translator[C]. In: Proc of the annual conference on USENIX Annual Technical Conference, Berkeley, 2005:4141.

        [8] VMWARE.VMware SVGA device developer kit[EB/OL]. vmwaresvga.sourceforge.net.

        [9] HUMPHREYS G, HOUSTON M, NG R, et al. Chromium: a streamprocessing framework for interactive rendering on clusters[C]. In: Proc of 29th Annual Conference on Computer Graphics and Interactive Techniques. New York, 2002:693702.

        [10] HANSEN J G. Blink: 3d display multiplexing for virtualized applications[R]. Technical Report,ISSN: 01078283,2006.

        [11] LAGAR CAVILLA H A, TOLIA N, SATYANARAYANAN M, et al. VMMindependent graphics acceleration[C]. In: Proc of Virtual execution environments, New York, 2007:3343.

        [12] SHI L, CHEN H, SUN J. vCUDA: GPU accelerated high performance computing in virtual machines[C]. In: Proc of International Parallel & Distributed Processing Symposium. Rome, 2009,111.

        [13] GUPTA V, SCHWAN K, TOLIA N, et al. Pegasus:coordinated scheduling for virtualized acceleratorbased systems[C]. In Proc of USENIX Annual Technical Conference, Berkeley,2011:35.

        [14] TAKIZAWA H, SATO K, KOMATSU K, et al. CheCUDA:a checkpoint/restart tool for CUDA applications[C]. In: Proc of International Conference on Parallel and Distributed Computing Applications and Technologies. Higashi Hiroshima, 2009:408413.

        [15] HARNIK D, PINKAS B, SHULMANPELEG A. Side channels in cloud services: reduplication in cloud storage[J]. Security & Privacy,2010,8(6):4047.

        [16] WU Z, XU Z, WANG H. Whispers in the hyperspace: highspeed covert channel attacks in the cloud[C]. In Procedings of the 21st USENIX conference on Security symposium, Berkeley, CA, USA,2012:910.

        [17] MAURIVE C, NEUMANN C, HEEN O, et al. Confidentiality issues on a GPU in a Virtualized Environment[C]. In Proceedings of the 18th International Conference on Financial Cryptography and Data Security (FC), Barbados, BARBADOS,2014.

        [18] 趙冰.GPU虛擬化中安全問題的研究[D].成都:電子科技大學(xué),2014.

        [19] 李翔,熊東旭.化云為雨.NVIDIA“加速”云落地[EB/OL]. http://www.eworks.net.cn/interview/leader_597.htm.

        責(zé)任編輯(責(zé)任編輯:杜能鋼)

        英文摘要Abstract:GPU, as a type of very high cost efficient computing resource, has become an important component to construct high performance computing system. Meanwhile, GPU virtualization also has been paying more and more attention so as to improve practical usage efficiency. First, a brief introduction on GPU virtualization techniques is given in this paper, and three main GPU virtualization techniques including exclusive use, GPU virtual equipment simulation and application layer interface virtualization are detailedly described. Second, virtual desktop application, GPU virtualization for general computation, and the security issues of virtual GPUs are analyzed. At last, several GPU virtualization solutions for some typical applications are concluded out.

        英文關(guān)鍵詞Key Words: GPU Virtualization;Virtual Desktop;General Computing Virtualization;Application Analysis

        中文人妻无码一区二区三区信息| 一区二区三区人妻少妇| 欧洲乱码伦视频免费| 欧美性受xxxx狂喷水| 亚洲深深色噜噜狠狠爱网站| 最新国产美女一区二区三区| 日韩黄色大片免费网站| 中文字幕一区二区精品视频| 精品国产性色无码av网站| 少妇人妻真实偷人精品视频| 无码av一区在线观看| 国产亚洲精品一区二区在线播放| 久久精品国产亚洲av高清三区| 一本色道久久综合狠狠躁篇 | 少妇性l交大片| 国产情侣一区在线| 91麻豆精品激情在线观最新| 日本熟女精品一区二区三区| 国产两女互慰高潮视频在线观看 | 精品久久久久久电影院| 亚洲一区二区三区ay| 综合色免费在线精品视频| 美丽人妻在夫前被黑人| 丰满爆乳无码一区二区三区| 国产经典免费视频在线观看| 爱爱免费视频一区二区三区| 国产69精品久久久久9999apgf| 性一交一乱一乱一视频| 国产精品99久久国产小草| 色老板在线免费观看视频日麻批| 成人国产精品一区二区八戒网| 国产精品久久777777| 国产精品一区二区 尿失禁| 岛国av一区二区三区| 99在线视频这里只有精品伊人| 好男人社区影院www| 曰本无码人妻丰满熟妇5g影院| 看全色黄大黄大色免费久久| 国产精品亚洲av高清二区| 国产欧美日韩一区二区三区| 国产精品成人嫩妇|