
前言
在有独显的台式机组装中,视频输出一般都是从显卡接口输出的。[1]但对于笔记本,则由于要兼顾功耗和性能,在不同的显卡之间进行切换,故各种各样的显卡切换技术随之产生。本文将按照大致时间顺序对每种显卡切换技术进行介绍,并介绍其优劣。
技术介绍
硬件手动切换(冷启动切换)
如标题所说,直接设置一个开关,直接选择使用性能强劲的独立显卡还是省电的核心显卡。其流程大致如下:

比较经典的案例就是索尼曾使用过的STAMINA/SPEED开关,只需要滑动开关并且重启电脑,便可进行显卡的切换。

软件手动切换(热启动切换)
冷启动需要重新启动系统。在当时SSD并不为主流的笔电平台,进行一次重新启动相对浪费时间。因此出现了基于软件不需要重新启动电脑就能实现的显卡切换技术。
AMD的GPU可以使用AMD PowerXpress技术[2]进行显卡热切换,而NVIDIA则使用Nvidia Hybird Power技术[3]来进行显卡切换。前者在APU平台下可以进行一定的混合运算[4];后者则在一部分渲染环境中允许独显与核显以并行模式进行渲染,从而发挥出多GPU的优势[5]

然而这项技术依旧存在一定的劣势:在进行显卡切换的时候需要关闭正在运行的应用程序,否则可能导致程序崩溃或者电脑黑屏。且此时切换显卡的过程依旧显得不那么“自动”,只能根据是否使用电池或者Windows自带的电源方案来进行跟进切换。除此之外,显卡切换依旧需要额外的电路(MUX芯片)来进行画面切换,在成本上依旧是治标不治本。除此之外,因为windows XP/Vista本身对多个显卡驱动的兼容性较差,因此打包定制驱动成为了多家厂商不得不做的事情。
使用这种方式切换显卡的笔电有联想Y470A,在软件内设置完成后拨动显卡切换开关既可进行显卡的切换[6]。

无需MUX模块的显卡切换技术
不需要关机但是还要关掉一堆软件并且等待切换总有种换汤不换药的感觉,而MUX芯片本身的成本也偏高。因此自动切换的技术产生了。
NVIDIA推出了Optimus技术(只适用于intel核显),这种设计能够识别是否出现需要独立显卡进行渲染的软件,并且将渲染的画面通过Optimus Copy Engine来转入系统内存,再让核显进行整合后输出。

这种技术有以下优势:
一是这种技术做到了快速切换GPU且不需要额外的人工操作;
二是大幅度降低了功耗。
三是这种技术由于不涉及MUX模块并且不需要多条画面输出线路,减少了成本。
最后是异构加速(即intel核显进行辅助渲染)也在这个时候获得了进一步的发展(比如Pr视频渲染)。
说完了优点,就要说缺点:
一是画面延迟,由于实际产生的画面并不从独立显卡输出,因此在画面的传输过程中不可避免地会产生一定的延迟,对于FPS/音游/STG玩家相对不友好;
二是兼容性问题,部分优化不到位的游戏(或者老游戏)可能会被误判为核显启动,从而造成游戏体验严重下降,且由于其是针对Windows设计的,因此在Linux系统下兼容性较差;
三是部分基于独显的特性无法在笔电上使用,比如G-Sync技术;
最后是性能的损失[7],由于Optimus的画面是需要通过内存来进行传输并且由核显渲染,故对内存敏感的游戏(如英雄联盟)影响较大,且高分高刷屏幕会出现严重的核显抢电情况从而导致性能下降。
AMD则在2011年推出了PowerXpress 4.0技术,并使用了新的名称:Dynamic Switchable Graphics(简称DSG,事实上内部一直在使用旧名称),这个技术使得启动游戏的时候显卡能够自动的进行显卡的切换,但除非使用固定模式来进行显卡切换,否则GPU是无法启用对OpenGL应用的支持的。2012年,AMD又推出了PowerXpress 5.0技术,增加了对OpenGL/OpenCL的支持,并且提供了OEM方案让厂家自定义配置。但此时的问题依旧很多:混乱的UI界面,切换并不那么灵敏。半年后,AMD推出了PowerXpress 5.5技术,并又使用了新的名称:AMD Enduro switchable graphics(后文简称Enduro来与Optimus作为对应)。这一版本大幅度改进了UI界面,并且允许用户自行进行显卡使用的设置[8]。此技术也是通过核显输出画面(intel的也支持),其原理与Optimus类似,故此处不多进行赘述。[9]
Optimus和Enduro在现在仍然是比较常见的一种显卡切换方案。比较熟悉的产品为蓝天NH50模具(如神舟Z7-CT7NH)、蓝天NB50模具(如神舟ZX6-CP5S1),这里建议用户自行将内存拓展为双通道并且避免选择高端显卡的机器(如神舟GX9-CT5DK)或搭载高分屏但性能释放极弱的机器(如华为MateBook X)。
屏蔽核显方案
这种性能损失在高端笔电上出现的相对较早,而继续使用传统的手动切换很明显是不合实际的方案。因此厂家直接按照台式机的输出方式,选择直接绕过核显(甚至直接连砍掉核显供电也砍掉,比如蓝天P7xx/P870[10])。

使用这种方案不仅解决了Optimus技术的短板,使得无核显的处理器能够使用,一定程度上提升了满载时的CPU性能(避免了核显抢电情况),且进一步的降低了成本。但这相对应的代价就是续航尿崩,并且一直处于待机状态下的独立显卡也会反过来对待机状态的散热造成压力。
比较熟悉的案例为蓝天P570(当然这玩意也没核显)/P7xx/P870系列(神舟GX10、未来人类X711、X911,其能够使用F后缀的台式机处理器)、Alienware Area-51M、微星GT63、GT75/WT75、大部分搭载HF后缀的笔记本(如联想Y7000的部分版本)、惠普暗影精灵5Air、幻影精灵X。
新的MUX Switch切换方案[11]
为了解决Optimus带来的问题,但又不希望失去Optimus带来的优势,厂商又重新引入了MUX芯片。但是这次MUX负责切换的不再是独立显卡和集成显卡,而是独立显卡和Optimus:

这种方式提供了独显输出的环境的同时也保留了Optimus本身的特性,使得省电和性能在此能够兼得。但是问题也有:因为有了多余的配置,所以成本依旧上升;而这种切换依旧显得有点不成熟,用户需要在软件内设置重新启动或者转换到bios内进行切换。
经典案例为蓝天模具中的MSHybrid/Discrete对应Optimus和独显输出(部分模具会出现需要外接显示屏幕才能使用独显直出的情况),如蓝天PB50(神舟Z9-CT7PK、未来人类T5X)、联想Y9000K、Y7000/Y7000P 2019[12]、华硕冰刃3s/超神2s、AlienWare17R5也有使用类似方案。
更加特殊的MUX切换
MacBook的MUX支持单集成显卡/单独立显卡/集成显卡输出独立显卡渲染/独立显卡输出集成显卡渲染。但由于这套切换技术是针对Mac OS设计的,故在安装Windows后在Windows环境下MacBook会默认强制使用独立显卡[13]。
雷电3外接显卡方案
雷电3本身最大只有40Gbps,以此为标准对应的话就是PCIE3.0*4-5。但这个带宽中有22Gbps是被强制用于视频画面的传输[14],故实际上给显卡用于数据传输的带宽就只剩下18Gbps,简单还算下就是PCIE3.0*2-3的带宽,对于高端卡并不友善。

除此之外,雷电3将画面回传到屏幕所造成的延迟不比Optimus好,有能力的话还是外接显示屏改善体验为好。
总结
MUXSwitch是能满足最多使用环境的技术;Optimus则是在成本和性能上折中的选择;而随着intel HF后缀处理器的出现,游戏本很可能会出现一批阉割核显的机型用来主打性价比。至于Enduro,鉴于VEGA核显所需要的高带宽(相比于intel)与独显传输画面所需要的带宽的冲突,估计实际的情况会比Optimus糟糕一点,所以最好还是在可能的情况下组成高频双通道内存为优(但其实Renior的VEGA规模缩了,且支持的内存频率也有提升;所以应该比2000/3000系的锐龙APU好很多)。
于此同时,警惕一种营销手段:用鲁大师跑笔记本,然后得出Optimus跑分比MUX切换或者显卡直出分数高来宣传产品。鲁大师有显卡异构分,但是这部分加成对于游戏基本上没有用。
备注
部分联想Y470N/Y570N卡版本是开启Optimus/使用集成显卡,如图所示。

相关链接
1.Arch Linux对NVIDIA Optimus的说明
https://wiki.archlinux.org/index.php/NVIDIA_Optimus
2.SONY索尼 VGN-SZ32CP_B(中文)说明书
3.联想Y470/570说明书
4.AMD Enduro显卡切换技术官方宣传页面
https://www.amd.com/zh-hans/technologies/enduro
5. 【科普】内存&核显对性能的影响 作者:孤独凤凰战士
https://zhuanlan.zhihu.com/p/29775896
6. AMD’s Enduro Switchable Graphics Levels Up-ANANDTECH 作者:Jarred Walton
https://www.anandtech.com/show/6243/amds-enduro-switchable-graphics-levels-up/2
7.惠普笔记本A卡无法使用OpenGL的解决方案
https://support.hp.com/cn-zh/document/c04094005
8. 直出,Optimus与MUX switch:再谈笔记本显卡切换技术 作者:1nterr0gaci0n
https://zhuanlan.zhihu.com/p/63983048
9. [教程]MacbookPro如何在Windows开启核显/集显-百度贴吧 作者:凉水
http://tieba.baidu.com/p/5238863236
10. AMD announces Radeon HD 7000M series with Enduro graphics-switching technology
https://www.youtube.com/watch?v=CDpUZg2W9Ns
11.关于雷电3技术的说明文档
https://thunderbolttechnology.net/sites/default/files/HBD16235_Thunderbolt_TB_r05.pdf
参考
- ^P106(类似矿卡同理)输出画面为特殊情况(并不是Optimus,据说是利用了win10的接口),这个显卡没有显示器输出所以只能绕道来输出画面。
- ^PowerXpress 4.0技术后显卡支持自动切换
- ^又称Nvidia Hybird SLI技术
- ^这个东西最终发展成了挖掘机时期的APU+弱鸡GPU时期宣传中的那个恶臭的交火技术(APU-to-GPU的ATI Hybird CrossFireX交火模式)
- ^这个加速作用直到现在(包括Optimus)都依旧存在
- ^此机型的N卡版本(Y470N)是开启Optimus/使用集成显卡
- ^可以参考此测试数据:【科普】内存&核显对性能的影响 作者:孤独凤凰战士 https://zhuanlan.zhihu.com/p/29775896
- ^这个技术虽然说是配合HD7000系列显卡更新的,但是实际情况中HD6000系列的旧卡也能通过一定的方式获得这个技术;最终官方也提供了老显卡的驱动支持。
- ^除此之外AMD也针对一部分产品搭载了核显休眠电源管理技术(ZeroCore Power),使得其能够在闲置状态下大幅度降低功耗;并且搭载AMD 跃频 (PowerTune) 技术使频率变化更加灵活。详细内容可以查阅: https://www.amd.com/zh-hans/technologies/enduro
- ^台式机主板也有直接砍掉核显(供电&画面输出)的操作,比如MSI Z390 Godlike
- ^又称Dual-Direct GFX(DDG双模增强显示)技术,链接为联想Y9000K的宣传新闻,提到了这一名词: http://nb.zol.com.cn/708/7082727_all.html
- ^GTX1050 3G为纯Optimus,且注意Y7000型号下有多代产品此处不代表全部
- ^有实现切换的解决方案,比如:[教程]MacbookPro如何在Windows开启核显/集显-百度贴吧 作者:凉水 http://tieba.baidu.com/p/5238863236
- ^这部分是固定的,别想着通过显卡外接显示器的方式来避免。非外接显卡的雷电设备的带宽最大为22Gbps,关于雷电3的更多内容可以参考: https://thunderbolttechnology.net/sites/default/files/HBD16235_Thunderbolt_TB_r05.pdf