MCPLive > 杂志文章 > NVIDIA Optimus智能显卡切换技术全解析

NVIDIA Optimus智能显卡切换技术全解析

2010-04-09紫雷《微型计算机》2010年3月下

解析—Optimus是什么

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

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

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

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

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

显卡冷启动切换

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

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

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

显卡热切换

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

Optimus

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


Optimus,独显工作拓扑结构

Optimus技术大的两个亮点,其一是整体技术规范都采用的是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处理工作文件。

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

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

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

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

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

分享到:

用户评论

共有评论(2)

  • 2010.04.23 17:20
    2楼

    非常实用且方便的技术,很符合"科技以人为本"的理念. 不仅保证了图形性能,而且兼顾了功耗. 可惜啊,前阵子买的vaio vpcs115没赶上这个技术,如果可以通过升级bios获得这个功能多好!不过看mc上说,此功能需要在主板上加入几个微动开关,看来是无缘我的本本了.

    (0) (0) 回复
  • 2010.04.11 00:09
    1楼

    科技的发展,够用、方便就好!

    (0) (0) 回复

用户名:

密码: