隨著近幾年雲計算、機器學習人工智慧、高算、區塊鏈的興起,gpu以其在浮點運算與並行運算效能方面的出色表現有了海量的市場需求。gpu與cpu的區別是cpu 由專為順序序列處理而優化的幾個核心組成,而 gpu 則擁有乙個由數以千計的更小、更高效的核心(專為同時處理多重任務而設計)組成的大規模平行計算架構。 gpu早已經不再只是顯示卡,而成為了cpu 之外更大的計算模組。很多大學實驗室新增的高算伺服器往往都會配備4~8 張卡,為了正是提高計算能力。一些所謂的專業挖礦機也採用高效能gpu 作為計算核心。新一代的作業系統和軟體對gpu的依賴越來越重。據lakeside的統計,windows 10 比windows 7 的gpu使用量增加了32%,使用gpu加速的應用數量也是過去 5 年的 2 倍,同時使用這些應用的使用者數量也增加了60%。在這裡我們可以很清晰的發現,不具備gpu運算能力的基礎架構難以滿足未來軟體和系統的要求。
廠商過度誇張vgpu 在雲桌面應用上的效果其實是一種概念炒作。有些銷售人員甚至宣傳通過vgpu 可以使瘦終端雲桌面勝任原專業圖形工作站的工作。宣稱雲桌面可應用於高密集圖形影象處理、設計工作。 但實際情況又如何?
早在十年前 nvidia 就推出了虛擬gpu案,即通過nvidia 底層管理軟體將物理 gpu按需切割,同時分配給多個虛擬機器使用,虛擬機器所使用的gpu被稱之為虛擬gpu。在虛擬機器中使用的vgpu計算能力來自物理gpu分割出來的配額,在後端強勁gpu支援下使虛擬機器的浮點計算與平行計算效能大幅提高。這一技術的設計初衷是為服務於租用雲主機的進行高算託管的專業使用者,主要被應用於虛擬伺服器、應用主機伺服器。現今天我們在阿里雲、aws 等雲計算提供商處租用雲主機時都有vgpu 池可供選擇。使用者可以根據自己的需求選擇多顆vgpu 來提高自己託管的應用服務的計算速度。可以說這一項技術從一開始就並不是桌面使用者開發的。雖然理論上vgpu 可以加快虛擬機器的圖形影象處理能力,但卻無助於圖形影象在遠端終端的輸出能力。
重申一遍vgpu 技術是用來提高虛擬機器的浮點運算、平行計算能力,對虛擬機器影象的遠端輸出到終端上的流暢程度沒有實質性的幫助。雲主機雲服務注重的是運算能力;雲桌面注重的是前端桌面的互動體驗,所有的遠端桌面傳輸協議都對影象進行了有失真壓縮,遠端虛擬機器輸出的幀通過網路傳輸到終端(盒子)時影象實際已經進行了裁減;即使後端虛擬機器上的vgpu渲染了一張4k 的32位真彩影象,通過遠端桌面傳輸協議回顯(終端盒子收到加密壓縮的資料後把資料還原成影象) 到終端顯示器上被使用者肉眼看到之時其實已經是縮水後的復刻品。 其實vdi 的雲桌面在高密集影象處理方面表現不佳其瓶頸也並不在後端的gpu不足,而且網路傳輸的損失與前端能力的不足。在窄頻寬與瘦終端環境表現得更明顯。
桌面虛擬化之GPU虛擬化
虛擬化技術的變革堪比 cpu晶元的發展,迄今為止,伺服器上的 cpu,記憶體,儲存,io裝置等都已經可以虛擬化,通過在伺服器上部署虛擬機器,可以實現多個虛擬機器例項共享同一硬體資源。隨著虛擬化的應用普及,使用者場景也變得越來越多樣和廣泛。特別是近年來桌面虛擬化市場的紅火,gpu虛擬化技術也開始被越來...
真實的謊言 桌面虛擬化(一)
當我第一次使用vmware workstation和virtual pc得時候,覺得異常神奇,覺得怎麼可能在一台客戶機上能夠同時跑多個作業系統,多個個人的桌面。桌面虛擬化讓我們的桌面可以在同一時間展現給我們多個世界,這虛擬的世界,確實實實在在實現在我們得眼前。我覺得桌面虛擬化的確是乙個非常好得技術,...
使用桌面虛擬化實現「監控雲」
虛擬桌面已經在各個不同的場景得以應用,今天我們介紹的主要場景是監控室,機場航班資訊的大螢幕應用。有圖有真相,先看下圖 其實畫面裡大大小小的螢幕,後台其實是乙個或多個虛擬桌面組成的。很多監控室有幾十個以上的螢幕,來組成整幅的螢幕牆,孰不知,在沒有虛擬桌面的時候,螢幕後面要擺幾十台pc機才能完成。現在使...