[转载]NVIDIA Optimus智能显卡切换技术全解析_草帽luffy_新浪博客

 

 

  这种显卡切换技术无需手动开关和重启电脑;

  它修正了可切换显卡技术之前存在的诸多问题;
  它既节能,又能保证性能;
  它就是NVIDIA新近推出的智能显卡切换技术—Optimus。

解析—Optimus是什么

  Optimus技术是NVIDIA新推出的一项智能化多显卡切换技术,它能够根据程序的运行状况与图形任务负载,灵活地在集成显卡与独立显卡之间切换。其主要的特色在于:

  {dy},无需手动干预,显卡的切换xx根据实际程序运行状况自动进行,当你浏览网页时用集显,玩游戏时则自动切换到独显;

  第二,切换过程无缝实现,无需退出程序,无需重启笔记本电脑;第三,实现了性能与节能的双效目标。

  可切换显卡技术的目的不言而喻——自然是为了在性能与节能之间做到{zh0}的平衡。当今的笔记本电脑应用多元化需求的趋势已经日益明显,消费者不但要求笔记本电脑具有相当的电池续航时间,以便外出携带使用,而且还要求笔记本电脑具有不错的性能,以应付3D游戏、视频压缩以及渐入佳境的高清视频播放需求。性能与节能,一直以来都是笔记本电脑产品上几乎不可调和的对立面,各大厂商为此也是花招百出。而显卡的可切换技术的出现,也正是消费者对笔记本电脑性能与节能双向要求的最直接体现——在某些时候,需要使用独立显卡运行3D游戏和高清视频播放等,而更多时候,只需要集成显卡来进行网页浏览、办公等简单任务,以达到延长电池使用时间的目的。

  Optimus并不是{sg}出现的显卡可切换技术,为什么它却受到了很大的关注呢?或许通过回顾笔记本电脑可切换显卡技术的发展历程,我们能从中知晓原因。

显卡冷启动切换

  大约在2006年左右,伴随SONY VAIO SZ的发布,带来了一项吸引眼球的技术——集显与独显的切换技术,本刊当时也在{dy}时间对这款产品进行了评测。读者一定还记得VAIO SZ C面上的“Stamina”(电池时间)与“Speed”(性能)拨动按钮吧。拨到“Stamina”可获得更长的电池续航时间(使用集显),而在“Speed”模式下则可获得更高的性能(独显)。不过,这一技术在当时也被一些人看作是噱头——要切换显卡,必须得重启电脑方可完成。

  哪为什么SZ需要重启?因为在操作系统下切换按钮之后,系统与显卡驱动程序并未接收到这一指令。这种纯硬件层面的切换直接由系统BIOS负责管理,因此必须要重启电脑之后,BIOS才能正确识别你想用的是独显,还是集显。操作上的麻烦程度也因此而凸显。

  不过,通过SZ的面世,我们看到了厂商为解决性能与节能这两个矛盾而做出的努力,也算是显卡可切换技术{dy}次有益的尝试。

显卡热切换

  2007年,NVIDIA带来了Switchable Graphics(Hybrid Power)技术,这算显卡可切换技术的第二次有益尝试,相比之前的冷启动切换时代,有了长足的进步。



第二代显卡切换技术结构示意图

 

  以NVIDIA显卡为例,NVIDIA显卡驱动在安装的时候就会在操作系统层(Operating System)与驱动层之间插入一个显示驱动中间层(Display Driver Interposer)作为中介。这个中间层一方面直接与NVIDIA驱动层相连,另一端通过定制的API(Custom API)与Intel集成显卡驱动相连。一旦在系统中做出了切换显卡的命令,SBIOS(System BIOS,系统BIOS)就立即通知显示驱动中阶层,使其关闭或开启独立显卡。同时,在硬件层面上,预设的显示跳线也会根据SBIOS的指令寻找对应的显卡,并将其中处理好的数据传输到显示驱动中阶层并最终输出到显示设备。

  由于显示驱动中阶层的实时原则,该过程无需重启电脑即可完成。

通过电池性能模式的改变来切换显卡

  可以看出,以Hybrid Power为典型代表(AMD也推出了Power Xpress双显卡切换技术)的显卡热切换技术主要的优势在于不用重启电脑即可完成切换,相比{dy}代技术的进步是明显的。不过,消费者仍然不满意——因为没有明确指示和显示,很多消费者甚至不知道如何去切换。而且另一个较大的问题则在于——当你要切换显卡时,必须关闭进行中的程序并在切换后重启程序,对于新手来说,这还是太麻烦了!对于众多用户来说,不是忘记切换,就是嫌切换之后关闭重启程序太麻烦,以至于多数时候从未更改过电池的使用模式。不少用户更是在长期省电模式(集显)或平衡(集显)模式下进行3D游戏,以至于惊呼“我的XXX显卡怎么连《魔兽世界》都这么卡啊!”。于是,一种自动化的在需求高性能的应用下用独显,而在需要更长电池续航时间时换集显的智能技术成为消费者真正想要的。NVIDIA此时就推出这种基于硬件与软件相结合的显卡自动切换技术——Optimus。

Optimus

  从Optimus的拓扑结构示意图可以看出,与前两代的显卡切换技术相比,Optimus主要是将IGP(Integrated Graphics Processor,集成显卡)用作了桥梁。在通常状况下,NVIDIA独显的GPU处于关闭状态,系统运行的是IGP,此时IGP既充当渲染处理器,也同时作为输出接口。一旦NVIDIA驱动检测到某个程序能从独显上获得更好的效果或者更加的运行体验,驱动就会开启GPU。在程序运行之时,驱动会根据预设的程序智能地判断程序能否从独显中获益。如果确认,则独显GPU将从闲置的睡眠状态中唤醒,并接手进行所有的渲染工作。整个过程都由程序自动判断控制,无需人为干预。Optimus,独显工作拓扑结构

  Optimus技术{zd0}的两个亮点,其一是整体技术规范都采用的是Windows标准传输协议和标准API进行工作。从通过微软标准API接口与IGP互联,到GPU通过PCI-E总线与IGP互联,整个过程中并无特殊生僻的规范与协议出现,也使得显卡切换工作能得以无缝进行。

Optimus,集显工作拓扑结构

 

  第二个亮点则来自IGP。前文已经提及,当IGP单独工作时,它既承担渲染工作,也充当了输出控制器的角色。而在系统开启NVIDIA GPU之后,IGP并没有彻底关闭,而是在其中充当了桥梁的作用——单独作为输出控制器。来自独显GPU处理好的数据通过PCI-E总线传输到IGP中,再经由IGP输出到显示器,由此可实现无缝的显卡切换,而且在切换过程中不会产生之前热切换技术所带来的黑屏现象——因为输出部分总是由IGP在控制。

  可见,当开启高GPU负荷任务的程序时,Optimus自动切换为GPU模式,而在退出程序后,Optimus则立刻切换为IGP模式,一切都是自动进行,根本无需人工干预,使用十分方便。

  我们将在下一期的文章中为大家深入分析Optimus的工作原理,有兴趣的读者不妨关注。

  看完了三代显卡切换技术的演变,你是否了解了Optimus技术所带来的意义呢?如果还不是很清楚的话,那么我们不妨来看一个具体的例子。

  选择一个大家经常会遇到的应用为例:开启笔记本电脑之后浏览网页,10分钟后玩《魔兽世界》,60分钟后开启Word处理工作文件。

  在这个应用下,要实现{zd0}可能的节能与保证《魔兽世界》的运行效果,“老中青三代”显卡切换技术分别是如何进行的呢?(假设默认状态为集成显卡)

  显卡冷启动切换时代:开机→浏览网页→切换到高性能模式→重启→运行《魔兽世界》→关闭《魔兽世界》→切换到电池续航时间模式→重启→处理Word文档

  显卡热切换时代:开机→浏览网页→切换到高性能模式(等待约5~10秒)→运行《魔兽世界》→关闭《魔兽世界》→切换到电池续航时间模式(等待约5~10秒)→处理Word文档

  Optimus:开机→浏览网页(IGP模式)→运行《魔兽世界》(GPU模式) →关闭《魔兽世界》(IGP模式) →处理Word文档(IGP模式)

  可以看出,前两种技术都需要人为干预操作,而Optimus则xx实现了自动化。好比手排轿车与自动档轿车的区别,对于经验丰富的驾驶员而言,手排车不停的换档与脚踩离合器的动作也许还能应付,但是对于大多数追求驾乘乐趣和新手而言,自动档的傻瓜式操作显然更适合他们,真正能让他们享受到驾车的乐趣。无怪乎近年来自动档轿车居多,由此也可见智能化的影响于一斑。

实战—五问Optimus

  Optimus到底好不好用?实用吗?容易掌握吗?实际使用中有哪些问题……

  面对全新的Optimus技术,我们心里实在有太多的疑问。而在我们拿到华硕送测的具备Optimus技术的样机UL50Vf之后,立刻开始了测试。

Question 1:我如何知道Optimus起作用了?

        在以往,我们要想知道当前工作的是集成显卡还是独立显卡,往往不得不借助第三方软件工具进行查看。这一情况在支持Optimus技术的笔记本电脑上得到了改观,你所需要的只是一个名为“NVGPU State Viewer”的小软件(NVIDIA在支持Optimus技术的显卡驱动包中提供该程序,笔记本电脑厂商也随机提供)。

        ANSWER:根据NVIDIA GPU:OFF和NVIDIA GPU:ON两种状态,就能判断独立显卡是否已经开启了。

Quest ion 2 游戏,Optimus如何智能切换?

        Optimus能否做到运行游戏时无缝切换?对此,我们特地挑选了8款具有代表性的游戏进行了测试:同时,为了增加测试的完整性,我们还加入了PCMark Vantage和3DMark Vantage的测试,以便检测在这两个使用最普遍的评测软件下,Optimus会否智能判断GPU的开关。

        以上测试均在默认系统设置下进行,未在NVIDIA显卡控制面板中进行针对性单项设置。

        在游戏测试部分,Optimus显示出了足够的智能,在判断游戏较为准确。但凡对GPU能力稍微有点要求的3D游戏,如《穿越火线》之类,都在游戏运行之后开启了独立显卡。而对于绝大部分2D游戏和伪3D游戏,由于IGP+CPU的处理性能已经足以应付,因此Optimus在面对这些游戏之时明智地选择了“沉默”,关闭GPU以获取更长的电池续航时间。

        PCMark Vantage全程测试中GPU处于OFF状态也再次证明PCMark的评测其实与显卡的关系并不太大,这一点与我们之前多次进行的显卡不同,其余配置相同的机型的PCMark得分相差不太大的结果也基本吻合。在单独针对显卡的3DMark Vantage测试中GPU被Optimus自动开启自然是在意料之中的事情。

        ANSWER:3D游戏,GPU自动接手;简单的2D游戏,集显足够。

Question 3 应用进行中是否可进行显卡切换?

        在某些以IGP执行的程序运行中,如果遇到需要GPU进行处理的场合,Optimus能否立即进行切换呢?

        为此,我们选择了Windows 7自带的IE 8.0开启网页浏览。首先进入Adobe的官方网站,然后进入Adobe Flash Player 10.1的HD演示视频片段展示区,并选择一段1080p的高清视频进行播放,{zh1}退出Flash Player 10.1播放器,关闭网页浏览器。

        测试证明,Optimus这个既智能又傻瓜的技术的确十分方便,在普通网页浏览中GPU始终处于关闭状态,而在点击播放HD视频后,启动Flash Player 10.1时,GPU即时转换为ON状态, 以确保高清视频的正常播放。

        ANSWER:在应用程序进行中,如果原本负载较轻的程序遇到需要大量GPU负荷的工作情况,Optimus会自动开启GPU进行处理,以获得{zj0}的体验效果。

Question 4 高清视频,用集显还是独显?

        看电影是几乎每一个笔记本电脑用户都要进行的应用,无论你是在线观看还是本地播放下载好的视频。尤其是在高清视频已经非常普及的当今,笔记本电脑看高清已经成了非常普遍的事情。我们也知道,当前的主流集成显卡都具备了不错的高清视频硬件解码能力,那么在播放高清的时候,Optimus会调用GPU进行硬解吗?

        我们特地找了六段不同大小和分辨率的视频,并分别用PowerDVD 8.0和{zj2}解码(设置KMPlayer为主播放器)进行了播放测试。

        测试显示,对于普通视频而言,由于处理器进行软解已经绰绰有余,因此硬件加速无需启动,Optimus使GPU处于关闭状态。不过,在高清视频的测试中则显得相对较为复杂,从测试的情况来看,对于1080p的MPEG2-TS格式和VC-1格式视频来说,Intel IGP已经能xx胜任硬件解码的工作,因此我们看到在播放这类视频时,GPU仍处于关闭状态。而在进行1080p/H.264视频播放时,或许Optimus认为IGP对此类格式的高清视频解码能力有限,而GPU单独处理更能从中获益,因此我们看到在H.264视频播放过程中开启了GPU。

        ANSWER:经过多次测试,目前我们发现只有H.264格式的1080p视频会触发Optimus启动GPU,其余格式视频皆可由IGP进行解码处理。当然,必须说明的是,因为Optimus的触发机制一定程度上与程序挂钩,我们未能测试所有的播放器,因此在使用不同的播放器时,结果可能存在小的差异。

        在使用播放器播放视频完成之后,提醒大家记得退出播放器。我们在测试中发现,在播放H.264视频过程中,GPU处于开启状态,而在视频播放结束之后,如果不彻底退出播放器,GPU仍将处于开启状态,尽管此时播放器并无任何动作。

Question 5 Optimus有节能效果吗?

        在Optimus技术的调节下,与不具备Optimus技术的笔记本电脑相比,它对节能有多少贡献?

        首先,我们用最常用的笔记本电脑性能评估与电池续航时间测试软件MobileMark 2007进行了测试。

        在默认状态下,Optimus并未开启GPU运行MobileMark 2007,整个测试过程以IGP独立完成。后来,我们通过面板调节控制,强制Optimus在运行MobileMark 2007时开启GPU以模拟不具备Optimus技术的笔记本电脑在高性能模式下的MobileMark测试电池续航时间。{zh1}发现,在Optimus的调节下,MobileMark 2007的测试成绩为10小时16分,而在强制GPU开启的状态下测试成绩为6小时35分。可见,有Optimus技术的前提下,进行日常办公等应用时,电池续航时间相比纯独显状态能得到有效的延长。

        随后,我们又用简易功耗测试仪配合应用程序的开启、运行与关闭,在Optimus智能调节与强制某些状态下使用独显的情况下对实时功耗进行了测试(该功耗数据含电源适配器功耗)。

        从测试中我们可以看出,针对测试样机华硕UL50Vf而言,在Optimus技术的调节下,上网浏览网页大约能比独显模式下节约30%的功耗。相比经常忘记手动切换电池使用模式的第二代热切换显卡技术来说,Optimus无疑在省时省力的前提下{zd0}程度地延长了电池续航能力,毋庸置疑。

        ANSWER:在Optimus的自动调节下,节能的效果是非常明显的。尤其对于那些之前长期忘记在不同使用状态下切换不同模式的用户来说,Optimus称得上是自动节能的管家。

测试小结

        带着最想了解的问题,我们对Optimus进行了较为细致的测试。在测试完成之后,我们也有5个心得想和大家分享。

        {dy},Optimus的重要意义不在于它本身有多么节能。相信我们,Optimus本身并不节能,其{zd0}作用在于能够在你需要性能的时候给予性能,而在不需要高性能的时候关闭独显这个能耗大户以延长电池使用时间。从某种意义上来讲,它更像是为“懒人”准备的傻瓜管理程序。就像开自动档车一样,不需要踩离合器,不需要换档位,你所有要做的事情,就是油门加速与刹车停车一样简单。

        第二,从实际测试结果来看,Optimus确实做到了NVIDIA宣称的显卡无缝切换,全过程不需要人为干预。而且Optimus在很大程度上还可以智能判断IGP是否满足当前应用的需要,即使在程序运行中,遇到需要高性能GPU处理的场合,GPU就会被Optimusxx,并接手渲染处理的任务。典型的例子就是前面测试过的IE浏览中打开高清视频播放。

        第三,从NVIDIA的官方资料来看,目前基于笔记本电脑的GeForce G200M/G300M系列显卡以及第二代翼扬平台都支持Optimus技术,这意味着Optimus将延伸到超便携电脑市场,而不仅仅针对主流笔记本电脑市场。

        第四,我们坚持认为,Optimus不是为主流娱乐市场准备的产品,真的不是。它的主要市场在哪里?超轻薄笔和商务记本电脑市场!是的,没错。选择超轻薄与商务笔记本电脑的用户几乎都有较大的移动使用需求,对电池续航时间自然较为在意。而在目前大量商务与超轻薄笔记本电脑都配置了独立显卡的情况下,Optimus的出现就为这群既要性能又要移动性的用户提供了{zj0}的管理程序。而对于以游戏等为主要应用的娱乐笔记本电脑来说,由于多数时间并非移动使用,这部分用户更愿意插上电源适配器,一直将机器保持在高性能模式下,Optimus的作用也就不是那么明显了。

        第五,{zh1},我们要再次把赞美词送给Optimus——它的出现真是恰逢其时,因为今后你几乎不可能看到单纯集显或者独显的笔记本电脑了!Intel Arrandale处理器渐成主流,对于核心集成了IGP的Core ix Mobile处理器而言,无论你是否愿意,今后笔记本电脑内始终会存在两块显卡,处理器的IGP在与独立显卡的协同工作上如何才能取得性能与节能的{zj0}平衡?Optimus似乎根本就是为此而生!大胆预测一下,Optimus将会迅速蹿红并成为主流市场笔记本电脑的标配。也许不久以后,咱们去市场上购买笔记本电脑总是会问上一句“支持Optimus吗?”

深究—你也可以“人为定制”Optimus

        看完前面两篇文章,相信很多读者在心里都憋了一个问题要问——Optimus到底是通过什么原理来控制程序是否需要启用独立显卡GPU的?别急,下面揭晓答案。

        原则一:NVIDIA在其驱动程序中内置了许多预设的程序,并预先定义了这些程序启动时是启用GPU还是IGP。

        原则二:一些以预设IGP启动的程序在运行当中如果遇到需要GPU处理的场合,Optimus会启动GPU对其进行处理。比如在浏览网页时需要播放高清视频的场合。

        原则三:当需要GPU处理的程序退出时,Optimus自动关闭GPU,转为IGP接手。

        原理很简单吧!不过问题又来了:问题一,如果在列表中默认以IGP运行的程序,我想让它工作在GPU模式下,怎么办?

        问题二,驱动不可能收集所有的应用程序,如果我要运行的程序不在Optimus的清单中,它的运行方式是如何的呢?我要将它加入Optimus默认执行的列表中,又该怎么办?

        下面,教大家两招,包你吃遍天下。

自定义程序以何种显示核心运行

Step 1

        首先开启NVIDIA Control Panel,选择“View”下拉菜单,将菜单{zh1}两项打上勾,并退出NVIDIA Control Panel。

Step 2

        在想运行的程序图标上点击鼠标右键,并在“Run with graphics processor”选项中选择你想要以何种显示核心运行该程序。

        全局设置:Global Settings 默认状态为IGP
        独立显卡:High-performance NVIDIA processor
        集成显卡:Integrated graphics

添加程序到驱动预设列表或更改预设运行方式

Step 1

        开启NVIDIA Control Panel,选择“Manage 3D settings”。

Step 2

        在“Select a program to customize”选项中选择你想更改运行方式的程序。如果想查看所有驱动预设的程序,请取消“Show only programs found on this computer”前面的勾。

Step 3

        在“Select the preferred graphics processor for this program”选项中,选择以集显(Integrated graphics)或独显(Highperformance NVIDIA processor)运行。结束后点击“Apply”使设置生效即可。

Step 4

        如果要添加列表中没有的程序,点击“Add”,定位到想要执行的程序,再执行Step 3即可。

        对于没有在列表中的程序{dy}次运行时,根据多次测试结果显示,Optimus会尝试首先以默认的Global settings(全局设置) IGP模式运行,如果发现需要GPU的性能处理,则会切换到GPU模式。典型的例子就是在运行KMPlayer时,该程序不在列表清单中,播放一般视频和1080p的VC-1等视频时,都运行在IGP模式下,一旦播放H.264/1080p视频,Optimus则会开启GPU。不过有趣的是,即使我们强制把KMPlayer设置在IGP运行模式,当播放H.264视频时,GPU仍然会被打开,这应该与H.264视频调用NVIDIA高清解码组件有关,看来NVIDIA认定了H.264高清解码是IGP无法承担的任务啊!

        另一个例子则是运行《生化危机5》,该程序也不在驱动列表中,但一旦开始执行,Optimus也会自动打开GPU。这也说明,Optimus是可以对未知程序进行GPU负载判断并作出{zj0}选择的。

        根据NVIDIA宣称,支持Optimus的显卡驱动将会不断有后续的补丁出现。NVIDIA专门设立了研究实验室就Optimus对各种应用程序进行测试,并将会持续地将更新的程序补充到Optimus的程序预设列表中。届时用户只需要更新驱动补丁即可获得{zx1}的Optimus预设程序列表,还是十分方便的。

已投稿到:
郑重声明:资讯 【[转载]NVIDIA Optimus智能显卡切换技术全解析_草帽luffy_新浪博客】由 发布,版权归原作者及其所在单位,其原创性以及文中陈述文字和内容未经(企业库qiyeku.com)证实,请读者仅作参考,并请自行核实相关内容。若本文有侵犯到您的版权, 请你提供相关证明及申请并与我们联系(qiyeku # qq.com)或【在线投诉】,我们审核后将会尽快处理。
—— 相关资讯 ——