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

        ?

        GPU虛擬化相關技術(shù)研究綜述①

        2018-01-08 03:11:20余時強張為華
        計算機系統(tǒng)應用 2017年12期
        關鍵詞:重定向共享性虛擬化

        余時強,張為華

        (復旦大學 軟件學院,上海 201203)

        (復旦大學 上海市數(shù)據(jù)科學重點實驗室,上海 201203)

        (復旦大學 并行處理研究所,上海 201203)

        GPU虛擬化相關技術(shù)研究綜述①

        余時強,張為華

        (復旦大學 軟件學院,上海 201203)

        (復旦大學 上海市數(shù)據(jù)科學重點實驗室,上海 201203)

        (復旦大學 并行處理研究所,上海 201203)

        因為計算密集型應用的增多,亞馬遜和阿里巴巴等公司的云平臺開始引入GPU(Graphic processing unit)加速計算. 云平臺支持多用戶共享GPU的使用,可以提升GPU的利用效率,降低成本; 也有利于GPU的有效管理. 通過虛擬機監(jiān)視器以及各種軟硬件的幫助,GPU虛擬化技術(shù)為云平臺共享GPU提供了一種可行方案. 本文綜合分析了GPU虛擬化技術(shù)的最近進展,先根據(jù)技術(shù)框架的共同點進行分類; 然后從拓展性、共享性、使用透明性、性能、擴展性等方面對比分析,最后總結(jié)了GPU虛擬化的問題和發(fā)展方向.

        GPU; 虛擬化; 云計算

        1 引言

        隨著互聯(lián)網(wǎng)應用的快速發(fā)展,計算機每天需要處理大量的數(shù)據(jù),然而傳統(tǒng)軟硬件方法相對高昂的維護成本給相關應用的普及造成了極大的障礙. 為了解決該問題,2006 年谷歌推出“Google 101 計劃”,并提出了云計算的概念. 云計算把IT能力轉(zhuǎn)變?yōu)榭晒芾淼倪壿嬞Y源,虛擬化是云計算的關鍵技術(shù)之一.

        虛擬化技術(shù)有多種分類,按實現(xiàn)方式可分為硬件虛擬化和軟件虛擬化; 按運行模式可分成全虛擬化和半虛擬化. 軟件虛擬化(如QEMU[7])用軟件來仿真硬件平臺,硬件虛擬化(如IntelVT[8])擴展硬件單元提升VMM 的處理效率. 全虛擬化 (如 VMware Workstation[4])為客戶機提供完整的虛擬平臺,半虛擬化(如Xen[5])需操作系統(tǒng)和VMM配合實現(xiàn).

        虛擬機監(jiān)視器又可以分成本地VMM(類型I),和宿主VMM(類型II)兩種,如圖1所示. 本地VMM直接運行在硬件上,而宿主VMM運行在操作系統(tǒng)上. Xen為類型 I的代表,而 VMware Workstation 和 KVM 為類型II的代表.

        圖1 兩種類型虛擬機

        GPU(Graphics processing unit)又稱圖形處理器,最初用來加速計算機繪圖工作,已有非常成熟的編程庫接口,如OpenGL和DirectX. 由于GPU包含很多計算核,也可用于通用計算領域. 為了方便開發(fā),NVIDIA提供CUDA編程模型,支持快速移植CPU端耗時但易于并行的部分至GPU端,獲取較好的加速效果.

        GPU是一種高性能計算硬件單元,應用于很多領域,例如視頻編解碼、天氣預報和通用計算等[13].GPU的核數(shù)越來越多,計算能力越來越強大. 亞馬遜的EC2[1]和阿里云[2]等云平臺開始使用GPU輔助計算.如果多個用戶可以分享GPU,則可以提升GPU的利用率,降低硬件成本. 因為多任務的需求,GPU 的虛擬化研究成為趨勢.

        GPU的虛擬化技術(shù),可大致劃分為設備模擬、API重定向、設備直連和GPU全虛擬化四種方法,各有優(yōu)缺點. 設備模擬用軟件模擬硬件,API重定向封裝驅(qū)動的API實現(xiàn)資源共享,設備直連把GPU獨立分配給虛擬機使用,GPU全虛擬化修改VMM管理GPU.GPU虛擬化有多種方案,功能日趨完善. 與CPU虛擬化相比,虛擬GPU的個數(shù)仍然有限. 另外,沒有方案統(tǒng)一支持圖形渲染和通用計算. 而且由于GPU自身體系結(jié)構(gòu)的局限,GPU在多用戶的虛擬化場景下存在著嚴重的安全問題. 本文調(diào)研了近年來在GPU虛擬化方面的主要研究成果,對相關技術(shù)進行了全面的分析和討論. 在此基礎上,對現(xiàn)在GPU虛擬化存在的一些問題以及發(fā)展方向做出了總結(jié)和展望.

        本文結(jié)構(gòu)如下,第1章介紹云計算與虛擬化相關的背景. 第2章介紹GPU虛擬化挑戰(zhàn). 第3章對當前GPU虛擬化技術(shù)進行歸類,包括設備模擬、API重定向、設備直連、以及GPU全虛擬化四種,并對各類別系統(tǒng)特征進行詳盡的描述. 第4章比較各方法之間的優(yōu)劣. 第5章描述GPU虛擬化現(xiàn)存的問題并預測接下來發(fā)展趨勢,最后一章總結(jié)全文.

        2 GPU 虛擬化挑戰(zhàn)

        GPU的用途非常廣泛,例如視頻編解碼、圖像渲染、生物醫(yī)療和通用計算等方面. 各應用領域的計算需求并不一樣. 支持多用戶共享GPU,虛擬化技術(shù)需滿足計算多樣性的需求.

        因為商業(yè)競爭,GPU的設計細節(jié)并未公開,每代產(chǎn)品之間存在很大的差異. 另外,GPU的硬件接口也不開源,更沒有統(tǒng)一的標準. 為了高效使用 GPU,系統(tǒng)只能基于廠家提供的驅(qū)動. 這些差異增加了GPU虛擬化的難度.

        程序在虛擬化系統(tǒng)上運行較原生硬件系統(tǒng)帶來的性能損耗也是很大的一個挑戰(zhàn),性能損耗過高將降低GPU的利用率,反而增加成本. GPU虛擬平臺對應用驅(qū)動的使用透明性也會很大程度決定其部署難度.

        3 GPU 虛擬化方法

        GPU虛擬化主要完成硬件模擬和硬件共享兩個目的. 硬件模擬是在沒有真實GPU硬件可用的環(huán)境中,采用軟件模擬的方法仿真硬件設備,從而提供虛擬GPU硬件. 硬件共享是管理GPU硬件資源從而使其可以被多用戶共享.

        為了實現(xiàn)GPU虛擬化的目標,主流GPU虛擬化大體上可以分為設備模擬、API重定向、設備直連和全虛擬化四種方法. 設備模擬在缺少物理硬件情形下使用純軟件方法模擬硬件單元,供系統(tǒng)中需要GPU的應用使用,用于顯示模擬和GPU架構(gòu)研究等領域.API重定向方法將宿主虛擬機作為管理GPU的樞紐,客戶虛擬機在不改變調(diào)用接口的情形下使用前后端模塊通信的方法共享GPU. 設備直連解決了虛擬機無法使用GPU的問題. 全虛擬化通過修改虛擬機監(jiān)視器,使其對GPU進行資源管理,實現(xiàn)GPU共享.

        3.1 設備模擬

        早期的虛擬機只消耗宿主機的計算和存儲資源,為了保證應用的運行,只能通過模擬外設來提供相應的功能. 設備模擬是一種用純軟件方式模擬GPU硬件邏輯單元功能的方法. 根據(jù)需求的不同,軟件模擬的詳細程度會有所不同. 最簡單的只提供GPU對應接口和相關功能. 最詳細的可以提供GPU硬件每個時鐘周期的工作過程. 由于軟件方式進行GPU各種功能模擬,該方法具有較好的靈活性和強大的功能,然而,由于通過軟件的方式模擬硬件行為,這種方法面臨較大的性能挑戰(zhàn),常用于簡單的顯示功能和GPU架構(gòu)研究.

        在圖像處理方面,QEMU可以模擬簡單的VGA設備,來滿足虛擬機在使用GPU時的簡易功能需求,目前基本具備2D顯示功能,已經(jīng)在一些需要用到GPU顯示的虛擬系統(tǒng)中應用,如KVM和Xen利用QEMU負責虛擬顯示設備.

        在通用計算方面,GPGPU-Sim[6]通過分析CUDA編程模型下發(fā)射線程的執(zhí)行方式,在CPU端進行軟件模擬運行PTX指令集. 在并行編程模型中,GPU發(fā)射一組(grid)線程并發(fā)執(zhí)行,這些線程又會被細分為塊(block). GPGPU-sim用軟件模擬的方式實現(xiàn)了包含六個階段(取指、譯碼、執(zhí)行、內(nèi)存1、內(nèi)存2、寫回)的流水線執(zhí)行單元. 32個線程在軟件模擬的計算單元上以SIMD的方式執(zhí)行,若線程之間發(fā)生條件分支,則采用后支配的收斂機制進行同步[6]. GPGPU-sim已廣泛應用于各種體系結(jié)構(gòu)或GPU新特性的相關研究中.

        3.2 API重定向

        研究者發(fā)現(xiàn)GPU驅(qū)動提供了統(tǒng)一的調(diào)用接口. 圖像渲染的OpenGL編程接口和通用并行計算的CUDA編程接口與GPU內(nèi)部實現(xiàn)沒有關系. API重定向在接口層面上實現(xiàn)虛擬化,采用對調(diào)用接口二次封裝的方法. 這種方法相對簡單,在圖像渲染和通用計算都有廣泛的應用.

        在API重定向框架下,客戶虛擬機和宿主虛擬機上設立前后端模塊,前端模塊提供應用程序訪問的通用接口,后端模塊鏈接GPU驅(qū)動直接訪問GPU(對于類型II的VMM而言,此處宿主虛擬機是直接運行在硬件上的操作系統(tǒng)),前后端模塊采用RPC等協(xié)議實現(xiàn)通信,具體如圖2 所示. 在圖像渲染方面,VMGL[26]在客戶虛擬機中添加的前端模塊與OpenGL調(diào)用接口一致,同時在宿主虛擬機中添加后端模塊與原生OpenGL庫鏈接,利用WireGL[28]網(wǎng)絡傳輸協(xié)議將客戶虛擬機的命令傳送給宿主虛擬機,從而間接訪問GPU.WireGL通信協(xié)議提高了網(wǎng)絡帶寬的利用率. VMGL能達到86%的原生GPU渲染效果.

        圖2 API重定向示意圖

        API重定向在GPU通用計算領域中也有大量應用,架構(gòu)基本如圖2所示. 最主要的區(qū)別在于虛擬機監(jiān)視器和前后端模塊通信協(xié)議的選擇. GVim[9]和vCUDA[8]使用Xen作為實驗平臺,GVim使用XenStore[5]協(xié)議來實現(xiàn)前后端通信,數(shù)據(jù)通過pinned內(nèi)存映射和虛擬機間內(nèi)核緩沖區(qū)共享傳輸,性能主要受XenStore的行為以及內(nèi)存拷貝的影響. vCUDA[22]對比了VMRPC[34]和XMLRPC[27]兩種通信協(xié)議的性能,發(fā)現(xiàn)VMRPC協(xié)議可以幾乎達到原生性能,而XMLRPC協(xié)議在進行大量數(shù)據(jù)傳輸?shù)那闆r下性能損耗較為嚴重. gVirtuS[11]采用類型II的虛擬機監(jiān)視器作為實驗環(huán)境,基于TCP協(xié)議開發(fā)vmSocket實現(xiàn)通信,繞過了CPU和GPU之間的數(shù)據(jù)傳輸,gVirtuS在遠程GPU利用方面有著前兩者不可比擬的優(yōu)勢.

        3.3 設備直連

        早期虛擬機無法直接使用GPU,程序只能通過設備模擬來實現(xiàn)GPU獨有的功能,該方法只能提供簡單功能,性能較差. 通過將虛擬機中原生的GPU驅(qū)動與硬件設備對接,能夠極高的利用設備的計算能力. 設備直連是早期一些IO設備虛擬化的一種可選方式. 虛擬機能夠直接訪問硬件資源,可達到原生系統(tǒng)性能.GPU在該方法下只能給某一個虛擬機使用,不能被多虛擬機共享.

        Dong等人[21]提出一種基于硬件IOMMU(即Intel和AMD的I/O虛擬化技術(shù))實現(xiàn)IO直連的虛擬化方法,實現(xiàn)了高質(zhì)量的I/O共享. 該方法維護了設備的語義信息,也保證了虛擬機在切換時GPU寄存器信息的一致性. 此外,中斷信息共享機制同步了緩存. 該系統(tǒng)在PCIe總線支持虛擬化拓展的情形下可直連GPU.

        一些云服務(如亞馬遜的EC2)提供商采用這種直連的方式在云平臺上部署GPU. 但是,設備直連只能保證GPU被一個虛擬機使用,不適合云計算場景下多用戶共享使用的特點. 在計算量不足的任務執(zhí)行過程中,GPU的利用率低下,浪費了計算資源. 設備直連的方法缺少必要的中間維護層和狀態(tài)跟蹤,對虛擬機的遷移等高級特性支持不足.

        3.4 GPU全虛擬化

        設備模擬方法只能模擬一些簡單的硬件、而且性能低下,API重定向雖然能夠達到接近原生硬件的性能,但是需要修改客戶虛擬機中程序庫,設備直連方案雖然性能較好,但是共享性非常差. 近幾年的提出的GPU全虛擬化將上述方案混合實現(xiàn)客戶虛擬機完全使用透明. 該方法對寄存器等硬件上下文信息使用軟件模擬,上下文切換后直連硬件設備能夠充分利用GPU.

        GPU全虛擬化指不需要對虛擬機中的驅(qū)動修改,應用程序就能使用GPU,即使用透明性. GPU全虛擬化技術(shù)比設備直連有更好的共享性,同時在性能方面遠超過設備模擬,也不需要修改客戶虛擬機中的驅(qū)動,可以說發(fā)展至今最好的GPU虛擬化解決方案. Intel的Kung Tian等人提出了gVirt[18],實現(xiàn)了圖像渲染方面的GPU全虛擬方案,并對該系統(tǒng)進一步優(yōu)化,提出gHyvi[14]和 gScale[16]. 在通用計算領域,Yusuke Suzuki等人提出GPUvm[12]系統(tǒng),通過修改VMM實現(xiàn)了GPU全虛擬化.

        gVirt基于 Xen 開發(fā),整體架構(gòu)如圖3 所示. 為了實現(xiàn)GPU全虛擬化,gVirt對Xen的宿主虛擬機(Dom 0)的一些修改,見圖3中的灰色部分. gVirt區(qū)分了GPU的資源,性能關鍵資源,包括顯存以及指令緩存;非性能關鍵資源,包括一些I/O寄存器. 為了接近于原生GPU的性能,gVirt用隔離機制直接訪問性能關鍵資源,用軟件模擬的方法支持非關鍵資源的訪問.gVirt采用影子頁表結(jié)構(gòu)等內(nèi)存劃分技術(shù),保證每個虛擬機擁有自己獨立的內(nèi)存; 并提出了地址空間膨脹(address space ballooning)技術(shù)來減少地址翻譯的開銷.gVirt實現(xiàn)了GPU調(diào)度器,調(diào)度時間片比較長,以降低GPU任務上下文切換的開銷. GPU的調(diào)度算法和Xen的CPU調(diào)度算法相互獨立,這使得CPU和GPU可以并行訪問顯存. gHyvi基于Xen的嚴格寫保護影子頁表機制提出了一種寬松影子頁表機制,減少了影子頁表的更新次數(shù)和陷入VMM同步的開銷. gScale動態(tài)分配顯存,避免虛擬機數(shù)目增加導致每個虛擬機平攤到的空間變少的問題. gScale比gVirt的可擴展性提高了4到5倍.

        圖3 gVirt框架示意圖

        在通用計算領域,GPUvm的GPU全虛擬化實現(xiàn)的更加的徹底,其修改只在Xen中完成. 與gVirt類似,GPUvm也采用GPU影子頁表的機制將顯存進行隔離,每個虛擬機訪問屬于自己那部分的內(nèi)存. 除此之外,CPU與GPU間的命令傳輸隊列也被虛擬化,即每個虛擬機都有各自的隊列結(jié)構(gòu),虛擬機進行切換時,命令隊列也會對應切換. GPUvm采用一種寬帶感知的非搶占算法進行調(diào)度,能夠保證GPU被在各個虛擬機之間均衡切換.

        4 評價

        設備模擬、API重定向、設備直連和GPU全虛擬化從不同的角度提供了GPU虛擬化的解決方案. 設備模擬能夠在沒有真實硬件的環(huán)境下虛擬出GPU,該特性是后三者不可比擬的,而且該方法能夠模擬新型硬件單元,幫助科研工作者探索新一代GPU硬件結(jié)構(gòu),具有良好拓展性. 應用程序幾乎不用修改就可以直接運行,有著良好的使用透明性. API重定向需要對接口進行二次封裝,因此使用透明性很差,重定向過程帶來了性能損耗. 宿主虛擬機后端模塊可以與各客戶虛擬機的前端模塊進行對接,實現(xiàn)多虛擬機共享. 設備直連在程序使用過程中能達到原生GPU性能,由于只能給某個特定虛擬機使用,所以共享性不好. GPU全虛擬化方法使用真實物理硬件,因此沒有類似于軟件模擬的拓展性; 該方法可直接運行現(xiàn)有的應用程序,透明性良好; 全虛擬化通過虛擬機監(jiān)視器管理GPU資源,實現(xiàn)GPU共享.

        我們對評估特性進行了總結(jié),描述如下:

        (1) 拓展性: 虛擬過程中 GPU 功能的可拓展性. 該特性評估對新功能的支持與延展性.

        (2) 共享性: 在虛擬化場景下,共享性是虛擬化的重要關注點. 該特性評估GPU利用率的影響以及GPU是否可以被多用戶并發(fā)使用.

        (3) 使用透明性: 客戶虛擬機使用虛擬GPU時是否需要修改程序或庫文件. 該指標評估在GPU虛擬化支持下對原應用程序的兼容性.

        (4) 性能: 虛擬環(huán)境下GPU的使用性能(與原生GPU使用做對比). 該指標評估GPU在虛擬化支持下的性能損耗.

        (5) 擴展性: 系統(tǒng)虛擬出 GPU 的個數(shù). 該指標評估GPU可被多少個虛擬機同時使用.

        其中拓展性、共享性和使用透明性是不可度量的,性能和擴展性是可度量的. 表1給出四種GPU虛擬化方法在各評估特性上的表現(xiàn),強表示滿足某特性,弱表示不滿足該特性或支持有限.

        表1 各系統(tǒng)評估表

        5 展望

        綜前所述,GPU虛擬化有多種技術(shù)方案,但沒有通用計算和圖形渲染兩個領域通用方案. 全虛擬化方案可在多虛擬機之間共享GPU,但GPU不可搶占的特性給資源調(diào)度帶來了一定困難. 另外,GPU的虛擬化很少考慮安全性問題.

        根據(jù)本文對當前GPU虛擬化方案的分析,我們認為GPU虛擬化今后可能會關注下列三個方面的研究:

        (1) 可搶占性: 由于 GPU 核數(shù)較多,搶占 GPU 需要保存大量的上下文信息,開銷較大,所以目前市場上GPU都不支持搶占特性. 只用當前任務完成之后,GPU才能被下個應用程序使用. 在GPU虛擬化的環(huán)境中,多用戶使用的場景會導致GPU進行頻繁的任務切換,可搶占的GPU能夠防止惡意用戶長期占用,并且能夠?qū)崿F(xiàn)用戶優(yōu)先級權(quán)限管理.

        (2) 通用性: 現(xiàn)在很多GPU虛擬化技術(shù)都是只針對某一種用途實現(xiàn),例如VMGL是能用來做圖像渲染計算的虛擬化,無法實現(xiàn)GPU的通用計算. GPUvm則只針對于NVIDIA的GPU做通用計算的虛擬化,無法用于圖像處理. 這些系統(tǒng)都不是通用的GPU虛擬化解決方案,而且只適用于某種虛擬機監(jiān)視器架構(gòu). 通用的虛擬化架構(gòu)有利于系統(tǒng)部署,使得GPU在各種云計算平臺發(fā)揮更大的作用,所以GPU虛擬化的通用性也是未來需要解決的問題.

        (3) 安全性: 由于云平臺的多用戶共享特性,GPU虛擬化帶來的安全問題也開始變得突出,惡意用戶可能會繞過當前虛擬化技術(shù)薄弱的保護機制進行攻擊.Roberto等人[31]通過分析GPU顯存殘余信息獲取用戶的私密數(shù)據(jù),所以如何保證虛擬機數(shù)據(jù)不被竊取也是GPU被用戶共享的前提.

        6 總結(jié)

        隨著計算密集任務的增加,云平臺部署GPU來提升系統(tǒng)性能. 為了在云平臺上共享GPU,同時也有助于提升GPU的利用率且便于管理,GPU虛擬化技術(shù)逐漸發(fā)展起來. 本文綜合分析了GPU虛擬化技術(shù)近十年的發(fā)展,分為設備模擬、API重定向、設備直連和全虛擬化四種. 本文進一步剖析了各種系統(tǒng)之間的技術(shù)框架和細節(jié),同時也從拓展性、使用透明性、性能、共享性以及可擴展性等方面對各種技術(shù)進行了深入的分析和對比. 最后,我們總結(jié)了GPU虛擬化存在的一些問題,并展望了未來可能存在的研究.

        1AMAZON. Amazon elastic compute cloud (Amazon EC2).http://aws.amazon.com/ec2/. [2014].

        2高性能計算. https://hpc.aliyun.com/product/gpu_bare_metal/.

        3Virtualization. https://en.wikipedia.org/wiki/Virtualization.[2017-07-11].

        4Vmware. http://www.vmware.com/.

        5Barham P,Dragovic B,Fraser K,et al. Xen and the art of virtualization. ACM Sigops Operating Systems Review,2003,37(5): 164–177. [doi: 10.1145/1165389]

        6Bakhoda A,Yuan GL,Fung WWL,et al. Analyzing CUDA workloads using a detailed GPU simulator. Proc. of IEEE International Symposium on Performance Analysis of Systems and Software,2009. ISPASS 2009. Boston,MA,USA. 2009. 163–174.

        7Bellard F. QEMU,a fast and portable dynamic translator.Proc. of the Annual Conference on USENIX Annual Technical Conference. Anaheim,CA,USA. 2005. 41.

        8Hiremane R. Intel virtualization technology for directed I/O(Intel VT-d). Technology@ Intel Magazine,2007,4(10).

        9Gupta V,Gavrilovska A,Schwan K,et al. GViM: GPU-accelerated virtual machines. Proc. of the 3rd ACM Workshop on System-level Virtualization for High Performance Computing. Nuremburg,Germany. 2009. 17–24.

        10Duato J,Pe?a AJ,Silla F,et al. rCUDA: Reducing the number of GPU-based accelerators in high performance clusters. Proc. of International Conference on High Performance Computing and Simulation. Caen,France. 2010.224–231.

        11Giunta G,Montella R,Agrillo G,et al. A GPGPU transparent virtualization component for high performance computing clouds. In: D’Ambra P,Guarracino M,Talia D,eds. Euro-Par 2010-Parallel Processing. Berlin Heidelberg,Germany. 2010. 379–391.

        12Suzuki Y,Kato S,Yamada H,et al. GPUvm: Why not virtualizing GPUs at the hypervisor? Proc. of the 2014 USENIX Conference on USENIX Annual Technical Conference. Philadelphia,PA,USA. 2014. 109–120.

        13Tian K,Dong Y,Cowperthwaite D. A Full GPU virtualization solution with mediated pass-through. Proc. of the 2014 USENIX Conference on USENIX Annual Technical Conference. Philadelphia,PA,USA. 2014. 121–132.

        14Dong Y Z,Xue M C,Zheng X,et al. Boosting GPU virtualization performance with hybrid shadow page tables.Proc. of the 2015 USENIX Conference on Usenix Annual Technical Conference. Santa Clara,CA,USA. 2015. 517–528.

        15Han SJ,Jang K,Park KS,et al. PacketShader: A GPU-accelerated software router. ACM SIGCOMM Computer Communication Review,2010,40(4): 195–206. [doi:10.1145/1851275]

        16Xue MC,Tian K,Dong YZ,et al. gScale: Scaling up GPU virtualization with dynamic sharing of graphics memory space. 2016 USENIX Annual Technical Conference(USENIX ATC 16). Denver,CO,USA. 2016.

        17Xia L,Lange J,Dinda P,et al. Investigating virtual passthrough I/O on commodity devices. ACM SIGOPS Operating Systems Review,2009,43(3): 83–94. [doi:10.1145/1618525]

        18Gottschlag M,Hillenbrand M,Kehne J,et al. LoGV: Lowoverhead GPGPU virtualization. Proc. of the 10th International Conference on High Performance Computing and Communications & 2013 IEEE International Conference on Embedded and Ubiquitous Computing (HPCC_EUC).Zhangjiajie,China. 2013. 1721–1726.

        19Gupta V,Schwan K,Tolia N,et al. Pegasus: Coordinated scheduling for virtualized accelerator-based systems.Proc. of the 2011 USENIX Conference on USENIX Annual Technical Conference. Portland,OR,USA. 2011. 3.

        20Dowty M,Sugerman J. GPU virtualization on VMware’s hosted I/O architecture. ACM SIGOPS Operating Systems Review,2009,43(3): 73–82. [doi: 10.1145/1618525]

        21Dong YZ,Dai JQ,Huang ZT,et al. Towards high-quality I/O virtualization. Proc. of SYSTOR 2009: The Israeli Experimental Systems Conference. Haifa,Israel. 2009.Article No.12.

        22Shi L,Chen H,Sun JH,et al. vCUDA: GPU-accelerated high-performance computing in virtual machines. IEEE Trans. on Computers,2012,61(6): 804–816. [doi: 10.1109/TC.2011.112]

        23Qi ZW,Yao JG,Zhang C,et al. VGRIS: Virtualized GPU resource isolation and scheduling in cloud gaming. ACM Trans. on Architecture and Code Optimization (TACO),2014,11(2): Article No.17.

        24Rossbach CJ,Currey J,Silberstein M,et al. PTask:Operating system abstractions to manage GPUs as compute devices. Proc. of the Twenty-Third ACM Symposium on Operating Systems Principles. Cascais,Portugal. 2011.233–248.

        25Kato S,McThrow M,Maltzahn C,et al. Gdev: First-class GPU resource management in the operating system. Proc.of the 2012 USENIX Conference on Annual Technical Conference. Boston,MA,USA. 2012. 37.

        26Lagar-Cavilla HA,Tolia N,Satyanarayanan M,et al. VMM-independent graphics acceleration. Proc. of the 3rd International Conference on Virtual Execution Environments. San Diego,California,USA. 2007. 33–43.

        27Merrick P,Allen S,Lapp J. XML remote procedure call(XML-RPC):U.S.,Patent 7028312. [2006-04-11].

        28Humphreys G,Eldridge M,Buck I,et al. WireGL: A scalable graphics system for clusters. Proc. of the 28th Annual Conference on Computer Graphics and Interactive Techniques. ACM. New York,NY,USA. 2001. 129–140.

        29Becchi M,Sajjapongse K,Graves I,et al. A virtual memory based runtime to support multi-tenancy in clusters with GPUs. Proc. of the 21st International Symposium on High-Performance Parallel and Distributed Computing. Delft,The Netherlands. 2012. 97–108.

        30Dong YZ,Yang XW,Li JH,et al. High performance network virtualization with SR-IOV. Journal of Parallel and Distributed Computing,2012,72(11): 1471–1480. [doi:10.1016/j.jpdc.2012.01.020]

        31Di Pietro RD,Lombardi F,Villani A. CUDA leaks: Information leakage in GPU architectures. arXiv:1305.7383,2013.

        32Virtualization solution. http://www.amd.com/en-us/solutions/professional/virtualization.

        33Ravi VT,Becchi M,Agrawal G,et al. Supporting GPU sharing in cloud environments with a transparent runtime consolidation framework. Proc. of the 20th International Symposium on High Performance Distributed Computing.San Jose,California,USA. 2011. 217–228.

        34Chen H,Shi L,Sun JH. VMRPC: A high efficiency and light weight RPC system for virtual machines. Proc. of the 18th International Workshop on Quality of Service (IWQoS).Beijing,China. 2010. 1–9.

        35Menychtas K,Shen K,Scott ML. Enabling OS research by inferring interactions in the black-box GPU stack. Proc. of the 2013 USENIX Conference on Annual Technical Conference. San Jose,CA,USA. 2013. 291–296.

        36NVIDIA grid virtual GPU technology. http://www.nvidia.com/object/grid-technology.html.

        37仝伯兵,楊昕吉,謝振平,等. GPU 虛擬化技術(shù)及應用研究.軟件導刊,2015,14(6): 153–156.

        38趙冰. GPU虛擬化中安全問題的研究[碩士學位論文]. 西安: 西安電子科技大學,2014.

        Survey of GPU Virtualization

        YU Shi-Qiang,ZHANG Wei-Hua

        (Software School,Fudan University,Shanghai 201203,China)
        (Shanghai Key Laboratory of Data Science,Fudan University,Shanghai 201203,China)
        (Parallel Processing Institute,Fudan University,Shanghai 201203,China)

        The emergence of HPC cloud has inspired service provider to deploy GPU in the cloud ecosystem (e.g.,Amazon EC2 GPU instance,Aliyun GPU Server). GPU as a computing accelerator is playing an indispensable role in clouding computing. Due to the intrinsic sharing feature of cloud,GPU sharing does not only boost the utilization,lower the cost,but also makes it easier to manage. GPU virtualization comes to solve this problem through Hypervisor and cooperation of software and hardware. This paper collects the methodologies of GPU virtualization and makes a classification and analysis. In addition,it concludes the existing problems and proposes the future works of GPU virtualization.

        GPU; virtualization; cloud computing

        余時強,張為華.GPU虛擬化相關技術(shù)研究綜述.計算機系統(tǒng)應用,2017,26(12):25–31. http://www.c-s-a.org.cn/1003-3254/6096.html

        2017-03-06; 修改時間: 2017-03-23; 采用時間: 2017-04-05

        猜你喜歡
        重定向共享性虛擬化
        基于OpenStack虛擬化網(wǎng)絡管理平臺的設計與實現(xiàn)
        電子制作(2019年10期)2019-06-17 11:45:10
        解決安卓文件夾亂象
        對基于Docker的虛擬化技術(shù)的幾點探討
        電子制作(2018年14期)2018-08-21 01:38:20
        重復壓裂裂縫重定向的措施研究
        虛擬化技術(shù)在計算機技術(shù)創(chuàng)造中的應用
        電子測試(2017年11期)2017-12-15 08:57:56
        4G偽基站的監(jiān)測定位與規(guī)避協(xié)同分析
        移動通信(2017年13期)2017-09-29 16:30:11
        創(chuàng)造人文性的數(shù)學課堂生活
        “鴻合”軟件在語文教學中的運用研究
        成才之路(2016年29期)2016-10-31 17:50:19
        高校圖書館的網(wǎng)絡信息安全建設
        存儲虛擬化還有優(yōu)勢嗎?
        欧美日韩国产成人综合在线影院 | 国产一区二区三区四区三区| 亚洲av成人无遮挡网站在线观看| 久久精品人人爽人人爽| 久久99精品久久久久久野外| 国产97色在线 | 免| 区三区久久精品水蜜桃av| 少妇人妻无一区二区三区| 色综合久久无码五十路人妻| 国产免费av片无码永久免费| 亚洲成a人片在线观看久| 国产一区二区三区四区色| 蜜臀人妻精品一区二区免费| 亚洲精品中文幕一区二区| 99久久国产综合精品麻豆| 久久久久久久久中文字幕| 久久精品国产亚洲av一般男女| 人妻少妇出轨中文字幕| 久久精品国产一区二区电影| 久久人妻av不卡中文字幕| 9久久婷婷国产综合精品性色| 国产黄大片在线观看画质优化| 性大片免费视频观看| 国产在线美女| 最近中文字幕一区二区三区| 91九色最新国产在线观看| 人人爽久久涩噜噜噜丁香| 99精品成人片免费毛片无码| 久久精品国产亚洲av试看| 精品国产日韩一区2区3区| 超清精品丝袜国产自在线拍| 久久综合亚洲色社区| 午夜男女视频一区二区三区| 亚洲av乱码国产精品观| 欧美日韩精品久久久久| 911精品国产91久久久久| 亚洲国产精品色一区二区| 久久久久高潮综合影院| 国产成人麻豆精品午夜福利在线| 51精品视频一区二区三区| 日韩在线精品免费观看|