OpenGL官方组织Khronos OpenGL ARB工作组最近陆续收到了许多请求,希望能澄清OpenGL在Windows Vista上的性能问题。由于微软在Vista中引入了Aero Glass桌面效果和全新的显示驱动模式,因而极大地改变了用户体验,对OpenGL的疑问也是可以理解的,不过很多人也许没有意识到,Vista是原生支持OpenGL的,这对微软来说是一个巨大的改变。
OpenGL ARB称,有关OpenGL和Vista大家应当记住以下三点:
1、Vista完全支持OpenGL硬件加速;
2、OpenGL应用程序可以从Vista改进的图形资源管理机制中获益;
3、Vista上的OpenGL性能完全可以媲美XP上的。
下边逐一解释:
1、Vista完全支持OpenGL硬件加速
与XP中一样,Vista里的OpenGL加速也是通过标准的Windows可安装客户端驱动程序(ICD)实现的,只是该驱动需要单独安装,否则都是只能使用软加速。
另外从Aero Glass桌面合成机制上看,OpenGL和Direct3D在Vista中的地位是等同的,都是相关图形驱动从应用程序中获得数据,并使用GPU进行硬件渲染,随后提交给桌面窗口管理器(WDM),随后合成写入桌面,实现新的用户界面效果。
关于DWM对系统应能的影响:由于DWM本身就是个3D程序,因此必然会消耗CPU和GPU资源,通常情况下会导致10%的图形性能降低,因此用户需要在美丽界面和更高性能之间做出选择;不过,如果3D游戏等程序运行在全屏状态,DWM就不再执行窗口合成,也不会再拖累性能。
2、OpenGL应用程序可以从Vista改进的图形资源管理机制中获益
Vista窗口显示驱动模式(WDDM)提供了一个防火墙和Thunk Layer,以提高系统整体稳定性,这与XP截然不同。在XP里,OpenGL ICD直接与GPU硬件层会话,并掌握诸多底层功能,包括内存管理。
事实上,WDDM为OpenGL应用程序提供了不少潜在的益处,比如显存等此前由OpenGL ICD管理的图形资源现在交给了操作系统虚拟管理,又比如在多个程序运行时,OpenGL ICD可以为每个程序开放最大的材质存储空间,并由Vista负责分配资源和管理时序,从而提高系统资源的整体利用效率。
标签: