SHARC虛擬化技術(shù)(Weidong Shi鸵鸥,2011文獻(xiàn)閱讀筆記)

云桌面的基本框架

Weidong Shi的2011年發(fā)表的文章:“SHARC: A scalable 3D graphics virtual appliance delivery framework in cloud”中
描述了“可擴(kuò)展3D桌面云”的SHARC框架肩榕,分為3個部分:

virtualization servers (虛擬化服務(wù)器轮纫,這篇文章使用Xen)
graphics rendering servers (圖形圖像渲染服務(wù)器,使用物理顯卡)
media streaming servers (視頻流服務(wù)器兄裂,采用H.264壓縮池凄,RTSP傳輸)
SHARC框架

1.1 virtualization servers框架

圖形虛擬化

為了支持虛擬機(jī)的3D應(yīng)用,SHARC采用了虛擬OpenGL驅(qū)動(從Chromium的OpenGL驅(qū)動修改)鬼廓。
VMGL是一個Xen虛擬環(huán)境下的Linux虛擬OpenGL驅(qū)動肿仑,它也是從Chromium的OpenGL驅(qū)動修改而來的)。
SHARC提供了一個Linux GLX驅(qū)動碎税,它實(shí)現(xiàn)了很多Chromium和VMGL中沒有實(shí)現(xiàn)的函數(shù)尤慰。

SHARC為Windows實(shí)現(xiàn)了一個顯示驅(qū)動(Windows DDK),將圖形渲染命令和數(shù)據(jù)從虛擬機(jī)共享內(nèi)存中提取出來(一個dom0級的代理程序)雷蹂,將它發(fā)送到graphics rendering server中伟端。
實(shí)現(xiàn)了虛擬Direct3D驅(qū)動, 將Direct3D API轉(zhuǎn)換為OpenGL命令(從WineX's D3D Driver(WineD3D)修改)匪煌,采用這種方式支持Direct3D责蝠。

音頻虛擬化

聲卡模擬器(SB16)

交互虛擬化

使用Windows DDK實(shí)現(xiàn)了虛擬鍵盤和鼠標(biāo)輸入(針對Windows虛擬機(jī))
使用Linux udev實(shí)現(xiàn)了輸入守護(hù)服務(wù)(針對Linux虛擬機(jī))

virtualization servers框架

1.2 graphics rendering server框架
執(zhí)行圖形渲染命令党巾,將渲染后的cJPEG數(shù)據(jù)流傳輸?shù)絤edia streaming servers中。

渲染上下文調(diào)度

SHARC’s graphics rendering server從Chromium’s server修改而來霜医。
SHARC 渲染圖像幀到 Pbuffer齿拂,(因?yàn)間raphics rendering server渲染圖像不是為了顯示,而是為了發(fā)送到media streaming server肴敛,這一點(diǎn)和Chromium署海、VMGL是不同的)。
選用cJPEG格式壓縮渲染后的幀医男,使用GPU's SIMD處理器砸狞,后來使用Nvidia's CUDA GPU編程。

對象的Cache

如果Cache中存在要渲染的圖行對象镀梭,virtualization servers不需要再傳輸一遍

GPU的JPEG壓縮

因?yàn)橐獋鬏斀omedia streaming servers刀森,所以使用JPEG壓縮一下,節(jié)省20%的帶寬丰辣。

Graphics rendering server框架

1.3 media streaming server框架
采用SMP系統(tǒng)撒强,接收cJPEG流,轉(zhuǎn)碼成H.264的碼流笙什,之后傳輸出去飘哨。

使用FFMPEG(集成X264的H.264編碼器),H.264編碼只是用了I和P幀
使用Live555實(shí)現(xiàn)RTP/RTSP協(xié)議的支持琐凭,使用Red5實(shí)現(xiàn)RTMP協(xié)議支持

Media streaming server框架

1.4 streaming VNC support
SHARC擴(kuò)展了標(biāo)準(zhǔn)VNC協(xié)議芽隆,以支持3D的虛擬應(yīng)用

使用overlay view的模式顯示實(shí)時的3D虛擬應(yīng)用

擴(kuò)展VNC支持3D虛擬 應(yīng)用

實(shí)驗(yàn)結(jié)果

2.1 實(shí)驗(yàn)條件

硬件:
virtualization server: 1個E5410 2.33 GHz,16 GB统屈,Xen 3.1
graphics rendering server: 4個PCIe x16插槽胚吁,4 塊Nvidia 9800GT顯卡
media streaming servers:2個E5410 2.33 GHz,4GB
客戶端:1個Dual-Core AMD Opteron Processor 2210愁憔, 2GB
網(wǎng)絡(luò)設(shè)備:Cisco 千兆交換機(jī)

測試實(shí)例:
Tux Racer (a GPL racing game)
Alien Arena (a FPS GPL game)
War of Warcraft 3 demo (a popular RPG game)

2.2 性能分析支持
使用IEEE Std 1588-2002進(jìn)行個機(jī)器之間的同步腕扶,以獲得小于毫秒級的精確計(jì)數(shù)器
實(shí)現(xiàn)了一個屏幕水印功能

2.3 初步結(jié)果(結(jié)果有些片面,不能反映系統(tǒng)的性能)

時延分析
總時延113ms左右

平均時延構(gòu)成

OpenGL的API調(diào)用次數(shù)和傳輸帶寬(virtualization server 到 graphics rendering server)

OpenGL的API調(diào)用次數(shù)和傳輸帶寬

media streaming server的傳輸帶寬
使用Tux Racer例子(這只是最簡單的圖形)吨掌,800幀的平均帶寬在1.5Mbps

Paste_Image.png
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末半抱,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子膜宋,更是在濱河造成了極大的恐慌窿侈,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,311評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件秋茫,死亡現(xiàn)場離奇詭異史简,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)肛著,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,339評論 2 382
  • 文/潘曉璐 我一進(jìn)店門圆兵,熙熙樓的掌柜王于貴愁眉苦臉地迎上來跺讯,“玉大人,你說我怎么就攤上這事衙傀√б鳎” “怎么了?”我有些...
    開封第一講書人閱讀 152,671評論 0 342
  • 文/不壞的土叔 我叫張陵统抬,是天一觀的道長火本。 經(jīng)常有香客問我,道長聪建,這世上最難降的妖魔是什么钙畔? 我笑而不...
    開封第一講書人閱讀 55,252評論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮金麸,結(jié)果婚禮上擎析,老公的妹妹穿的比我還像新娘。我一直安慰自己挥下,他們只是感情好揍魂,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,253評論 5 371
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著棚瘟,像睡著了一般现斋。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上偎蘸,一...
    開封第一講書人閱讀 49,031評論 1 285
  • 那天庄蹋,我揣著相機(jī)與錄音,去河邊找鬼迷雪。 笑死限书,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的章咧。 我是一名探鬼主播倦西,決...
    沈念sama閱讀 38,340評論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼赁严!你這毒婦竟也來了扰柠?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 36,973評論 0 259
  • 序言:老撾萬榮一對情侶失蹤误澳,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后秦躯,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體忆谓,經(jīng)...
    沈念sama閱讀 43,466評論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,937評論 2 323
  • 正文 我和宋清朗相戀三年踱承,在試婚紗的時候發(fā)現(xiàn)自己被綠了倡缠。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片哨免。...
    茶點(diǎn)故事閱讀 38,039評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖昙沦,靈堂內(nèi)的尸體忽然破棺而出琢唾,到底是詐尸還是另有隱情,我是刑警寧澤盾饮,帶...
    沈念sama閱讀 33,701評論 4 323
  • 正文 年R本政府宣布采桃,位于F島的核電站,受9級特大地震影響丘损,放射性物質(zhì)發(fā)生泄漏普办。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,254評論 3 307
  • 文/蒙蒙 一徘钥、第九天 我趴在偏房一處隱蔽的房頂上張望衔蹲。 院中可真熱鬧,春花似錦呈础、人聲如沸舆驶。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,259評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽沙廉。三九已至,卻和暖如春笨忌,著一層夾襖步出監(jiān)牢的瞬間蓝仲,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,485評論 1 262
  • 我被黑心中介騙來泰國打工官疲, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留袱结,地道東北人。 一個月前我還...
    沈念sama閱讀 45,497評論 2 354
  • 正文 我出身青樓途凫,卻偏偏與公主長得像垢夹,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子维费,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,786評論 2 345

推薦閱讀更多精彩內(nèi)容