WEB开发网
开发学院操作系统Windows Vista OpenGL在Vista上的性能问题 阅读

OpenGL在Vista上的性能问题

 2007-04-30 14:58:17 来源:WEB开发网   
核心提示:OpenGL官方组织Khronos OpenGL ARB工作组最近陆续收到了许多请求,希望能澄清OpenGL在Windows Vista上的性能问题,OpenGL在Vista上的性能问题,由于微软在Vista中引入了Aero Glass桌面效果和全新的显示驱动模式,因而极大地改变了用户体验,两种系统和两种API接口都无

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负责分配资源和管理时序,从而提高系统资源的整体利用效率。

3、Vista上的OpenGL性能完全可以媲美XP上的

有人声称OpenGL在Vista上的性能不如在XP上,这是不对的。下边给出专业OpenGL测试工具SPECviewperf、《Doom 3》(demo1)和《Prey》(move.demo)两个OpenGL游戏、《上古卷轴4:湮没》(demo1)和《半条命2:第一章》(Outdoor、关闭HDR)两个Direct3D游戏在两套系统上的性能比较。

SPECviewperf测试采用双核心Xeon 3.0GHz处理器、NVIDIA Quadro FX 5500专业显卡、ForceWare 91.36 for XP、ForceWare 100.72 for Vista驱动程序,关闭WDM;游戏测试平台包括AMD Athlon 64 FX-62 2.8GHz处理器、NVIDIA GeForce 7900GTX显卡和ForceWare 97.73 for XP、ForceWare 101.20 for Vista驱动程序,全屏运行。

可以明显看出,开启Aero Glass的DWM的确会导致系统图形性能下降10%。当然,如果你非常喜欢新的界面,这点儿损失还是值得的。

而游戏方面,无论OpenGL还是Direct3D都一样,Vista下与XP下基本持平或略有下降,两种系统和两种API接口都无明显差别,而随着Vista的日渐成熟,整体游戏性能也会逐渐改善。

Tags:OpenGL Vista 性能

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接