在測試manjaro顯卡驅動時,注意到了virtualgl包。
1.幀率測試(顯卡 Nvidia 940m)
測試的工具是 mesa-demos 8.4.0-2 (一款OpenGL的測試軟件)
見:https://www.opengl.org/archives/resources/code/samples/glut_examples/mesademos/mesademos.html
optirun glxgears //選擇獨顯並進行測試(bumblebee雙顯卡驅動方案)
a.未安裝virtualgl包測試的幀率
b.安裝virtualgl後的測試幀率
對比可以發現實時幀率相差很大。
2.關於virtualGL技術
virtualGL是一個開源工具包,使得任何Linux或Unix遠程顯示軟件都能夠以完全硬件加速的方式運行OpenGL應用程序。一些遠顯示軟件根本不能與OpenGL應用程序一起使用。其他的遠程顯示軟件迫使OpenGL應用程序使用一個緩慢的、只使用軟件的渲染器,這會損害性能和兼容性。
從上面測試的結果來看 使用的 glxgear 指令在Linux上運行調用 mesa-demos 測試程序時的情況可能屬於後者的情況,顯卡的性能受到了限制。
使用VirtualGL情況下,OpenGL命令和3D數據被重定向到應用服務器中的GPU,並且只有渲染的幀通過網絡發送,VirtualGL虛擬化了GPU硬件。當3D應用程序交換OpenGL繪圖緩衝區或刷新OpenGL命令緩衝區以指示它已完成對幀的渲染時,VirtualGL從Pbuffer中讀取渲染幀並將其傳輸。這樣的虛擬化技術使得顯卡性能得到充分發揮。