官方解释:Windows Vista和OpenGL
Khronos OpenGL ARB 工作组近日收到了关于澄清OpenGL 在Windows Vista上运行性能的请求……
Khronos OpenGL ARB 工作组近日收到了关于澄清OpenGL 在Windows Vista上运行性能的请求。基于Microsoft 已经通过 Windows Aero 合成桌面效果和引入全新的显示驱动架构戏剧化地做出了用户体验的更改,这些疑问是可以理解的。本文将简要讨论这些改变如何影响着OpenGL。
面对不断增长的行业用户在Windos Vista上发布OpenGL产品的需求, OpenGL ARB亦希望通过以下三个主要问题增强OpenGL图形算法标准与Windows Vista间的积极协作。
1) Windows Vista 是支持完全OpenGL硬件加速的;
2) OpenGL应用程序是可以从Windows Vista 改进的图形资源管理中获益的;
3) OpenGL在Windows Vista中的运行效能是完全可以匹敌其在Windows XP上的性能的。
Windows Vista 全面支持OpenGL
硬件加速的OpenGL是被Windows Vista和其Windows Aero合成桌面用户体验所完全支持的-这一点同Direct3D一样。
在Windows XP和 Windows Vista中OpenGL硬件加速是以同样的方式实现的-即通过一个由图形加速卡制造商提供的可安装用户驱动包(ICD)安装实现。如未安装此OpenGL ICD,Windows XP和Windows Vista都将转为使用CPU软加速OpenGL 渲染而非使用GPU图形加速卡硬件加速。
图1展示了在Windows Vista下OpenGL和Direct3D经过何种途径完成输出渲染。首先,OpenGL或Direct3D用户模式图形驱动从应用程序中取得数据并使用图形加速卡硬件渲染数据内容的帧画面。该帧之后被提交至桌面窗体管理(DWM),DWM将使用GPU加速将该帧画面合成写入桌面。在Windows Vista中,桌面合成功能是由Windows Aero或Windows标准用户体验的DWM实现的。
DWM是Windows Vista用户体验的关键元素,其主要功能是实现多个程序输出的帧画面内容在Windows桌面上的合成并最终呈现于屏幕上。DWM自身作为一个全3D的应用程序,也是要消耗GPU内存和资源的,并将成为一项GPU的额外负担,其通常情况下将消耗10%的图形处理性能。用户应当根据自身情况权衡DWM和Windows Aero用户界面体验与其所带来的性能开销之间的利弊。一个简单的增加应用程序效能的方法是通过选择Windows经典或Windows基本用户界面风格达到禁用DWM的目的。
当运行全屏应用程序时,如全屏游戏状态,DWM是不再执行窗体合成的,因此性能将不会有丝毫下降。
图1,OpenGL, Direct3D和桌面窗体管理(DWM)的关系
OpenGL从改进的资源管理中受益
新的Windows Vista窗体显示驱动模式(WDDM)提供了一个安全防火墙和Thunk Layer(其负责图形处理器硬件/内核模式图形驱动和用户模式图形驱动间的通信)来提高整体系统稳定性。这一架构不同于Windows XP,在Windows XP中OpenGL 接口控制文件(ICD)直接与GPU硬件层面对话并掌握许多底层功能,包括内存管理。
WDDM事实上提供了OpenGL应用程序一些潜在益处。例如,之前由OpenGL接口控制文件管理的图形资源,如显存,现在则交由操作系统虚拟。当多个应用程序运行时,OpenGL接口控制文件将可以为每个应用程序最大化开放材质存储空间,而资源分配和时序安排则由Windows Vista妥善处理,这将得到多程序运行时更有效的利用系统资源的结果。
OpenGL在Windows Vista上具有极具竞争力的表现
一些人曾提出OpenGL在Windows Vista上的效能不及其在Windows XP中的表现,这并非事实。
这里提供一些OpenGL在Windows XP和Windows Vista上运行效能的对比数据,包括SPECviewperf 专业 OpenGL 应用基准测试,两个OpenGL 游戏基准测试,以及两个DirectX游戏基准测试。
专业OpenGL应用程序性能
SPECviewperf测试数据显示专业OpenGL应用程序在Windows XP和Windows Vista上的图形处理性能及其接近。SPECviewperf在一个窗口内运行,在Windows Vista下为了达到最大图形处理性能我们通过选择Windows经典配色方案关闭了DWM。
这些数据令人印象深刻,其证实WDDM是一个完全不同于Windows XP的全新显示驱动模式,而新的Windows Vista驱动尚未从Windows XP OpenGL驱动的多年调整与优化中受益。
软件开发者和图形加速卡制造商从2006年11月便进入Windows Vista的配套生产准备,Windows Vista中的图形处理性能必将伴随时间的推移和驱动的成熟继续提高。当然无论您拥有何种版本的Windows操作系统,从图形加速卡制造商处下载最新的驱动程序总是重要的-特别是在某个新操作系统的生命初期。
如果DWM通过选择Windows Aero界面被开启,系统图形处理性能将下降约10%。对于某些使用者而言这一为了取得更先进用户界面体验而付出的代价是值得的。
OpenGL 游戏性能
Doom3 (demo1) 和 Prey (move.demo) 的数据显示Windows Vista对于全屏OpenGL游戏的性能支持与Windows XP下不相上下。因为这些程序多是全屏运行的,DWM将不必工作,因此在Windows Aero下性能并没有下降。
Direct3D 游戏性能
下图显示了Direct3D游戏Half Life 2 Episode One (demo1) 和 Oblivion (Outdoor, HDR关闭) 在Windows XP和Windows Vista中的性能。这些数据在与OpenGL基准性能测试相同的硬件平台及显卡驱动版本下取得。所有测试均运行于全屏模式下。
这些数据同样显示了Windows Vista在全屏模式下的运行效能是与Windows XP相当的。同样的原因,当应用程序运行于全屏模式时,DWM是没有动作的,因此在Windows Aero下性能并没有下降。
这些结果证明Direct3D和OpenGL均是Windows Vista系统优秀的3D 应用程序接口API。
结论
OpenGL已被完全整合入Windows Vista显示架构中,如Direct3D一样,二者均是一流的图形处理API。
同Windows XP环境一样,图形加速卡硬件销售商提供高度优化的驱动程序用以实现OpenGL硬件加速。
OpenGL 应用程序受益于Windows Vista提供的改进的资源管理。
OpenGL在Windows Vista中的表现完全可以匹敌其在Windows XP中的性能,并将伴随针对这一新操作系统日趋成熟的驱动支持迅速提高。
增强的Windows Aero用户界面将降低高强度图形处理软件大约10%的表现。但这一损失可通过选择Windows经典或Windows基本用户界面风格以及使用全屏应用程序消除。
为保证Windows Vista下的性能最大化和系统稳定性,建议用户定期检查其图形加速卡提供商是否有驱动程序升级。
由OpenGL ARB出版的第三版OpenGL Newsletter,已包含一篇NVIDIA提供给软件开发者的关于在Windows Vista中取得最大化OpenGL应用程序性能技巧的文章。详情请参见http://www.opengl.org/pipeline/article/vol003_7/ (英文)
任何关于本文的,以及OpenGL的一般问题,请联络Khronos OpenGL ARB工作组主席Barthold Lichtenbelt blichtenbelt@nvidia.com (仅限英文),中文咨询请联络Khronos中国 Walter Wen, walter@goldstandardgroup.com 并注明“译转Barthold Lichtenbelt ”。
责任编辑:袁绍龙
官方解释:Windows Vista和OpenGL相关推荐
- Microsoft Windows Vista
Microsoft Windows Vista是微软Windows操作系统的最新版本,于2005年7月22日微软正式公布了这一名字.原代号为Longhorn.Windows Vista的内部版本是6. ...
- windows7微软官方_Microsoft Windows 7 | 第2部分
windows7微软官方 Microsoft Windows Vista功能已删除 (Microsoft Windows Vista Features Removed) Some programs a ...
- Windows Vista下载地址
内容上:"旗舰版"="MSDN版"="Ultimate版"."RTM版"="正式版": 警告:本仅仅 ...
- Windows Vista 官方中文正式版(MSDN)(转载)
Windows Vista 官方中文正式版(MSDN) 国内BT下载:Windows Vista 官方中文正式版(MSDN) QUOTE: http://bt.hz0752.net/up/v64.to ...
- Windows Vista With Service Pack 2(x86 / x64)官方简体中文版(ISO)光盘镜像
Windows Vista Business With Service Pack 2 (x86)官方简体中文版: 光盘镜像种子下载: http://www.live-share.com/files/3 ...
- Windows Vista SP1
Windows Vista SP1 Vista SP1的深度剖析,不仅会告诉我们SP1中有什么,还会通过微软内部人士透露的信息向我们展示更多Vista SP1和 Windows Server 2008 ...
- 酷点桌面软件v1.2 和windows vista
这部桌面软件是有windows vista推出的一部软件.这是软件的简介: 酷点桌面是一款将计算机系统个性化的桌面美化软件,可以实现一键安装美化我们的计算机系统,功能强大,从开机界面-登陆界面-系统外 ...
- Windows Vista Ultimate 版测试结果汇整
(本文在版工的旧 Blog 中,发表日期为 2007/02/20) 以下为版工安装及测试 Windows Vista Ultimate 版的一些心得汇整.使用过后,觉得该版本 Windows 所需要的 ...
- IIS 7.0探索用于 Windows Vista 的 Web 服务器和更多内容
我 经常听到 Microsoft 内部和外部的人将新的 IIS 7.0 Web 服务器称为 Microsoft 在过去几年中所进行的最重要的开发工作之一.考虑到 Microsoft 最近推出了一系列引 ...
最新文章
- js实现替换指定字符后面的内容(包括指定字符)
- 用对拍程序来debug错误程序的错误数据
- 汇编语言(王爽第三版) 实验5编写、调试具体多个段的程序
- Atom飞行手册翻译: 4.3 作用域设置、作用域和作用域描述符
- 使用python排序_Python排序
- Java 建模: UML 工作簿:第 2 部分
- 关于erlang的-run 的启动参数
- 富士施乐248b粉盒清零_能不能告诉我施乐5070硒鼓芯片清零方法是什么
- java二重积分_java 版本二重积分计算
- 计算机管理内存条,win10系统查看电脑内存条型号的方法
- 水星mw300r虚拟服务器,水星MW300R无线路由器如何设置【组图】
- NS-miracle安装
- PoetryGenerator的参数
- macOS iOS - 系统版本、EFI 和 SMC 固件版本
- java分布式实现图片上传到图片服务器
- 马蜂窝加速乐分析案例
- 计算几何之用叉乘求多边形面积
- Python-Sql盲注检测
- 子墨庖丁Android的ActionBar源代码分析 (一)实例化
- python爬虫需要对象编程吗_Python爬虫基础知识及前期准备