当前,(据我所知)您有三种关于Linux下的Nvidia混合图形(所谓的Optimus技术)的可能性:
- 熊蜂。尽管这个项目可能看起来已经死了,但事实并非如此(披露者:我是开发团队的一员)。它一直在缓慢发展很长时间,因为我们都很忙,但是最近情况变好了,我们得到了新贡献者的帮助。4.0版本已步入正轨,主要是错误修复,primus后端已成为默认版本(大多数人不会注意到,因为他们已经在使用它)。Bumblebee允许您运行台式机并在集成的Intel芯片上显示,同时在分立的Nvidia卡上运行选定的应用程序。它可以使用nouveau或nvidia驱动程序(假设它们都支持您的卡,并且两者都应这样做),并且依靠bbswitch进行电源管理(如果使用nouveau,则可以选择使用vga_switcheroo)。在性能方面,由于其工作方式,Bumblebee成为PCIe瓶颈,这意味着您无法实现很高的帧速率(无论如何这实际上并没有用),而且您永远无法达到专用Nvidia卡的全部功能。如果您的笔记本电脑上的某些显示输出连接到Nvidia芯片(通常是Lenovo笔记本电脑上的HDMI),则Bumblebee允许您使用它们,但需要一些配置,可能远远不够理想。由于没有任何Bumblebee开发人员拥有受影响的笔记本电脑,因此未经过全部测试。否则,Bumblebee可以与DRI2或DRI3一起使用。但它需要一些配置,可能远不理想,而且最重要的是未经测试,因为没有Bumblebee开发人员拥有受影响的笔记本电脑。否则,Bumblebee可以与DRI2或DRI3一起使用。但它需要一些配置,可能远不理想,而且最重要的是未经测试,因为没有Bumblebee开发人员拥有受影响的笔记本电脑。否则,Bumblebee可以与DRI2或DRI3一起使用。
- 主要。这是该技术的正确解决方案,并且在正确的级别上实施:驱动程序,内核,Xorg…PRIME允许您与Bumblebee进行相同的设置,但是,由于法律方面的考虑,仅支持nouveau。除此之外,由于i915驱动程序需要进行更改,因此它也存在一些撕裂问题。另外,新秀在性能方面仍然存在很多问题,因此在进行适当的时钟恢复之前,您的性能可能会低于Bumblebee + nvidia的设置(Bumblebee + nouveau显然也遇到了同样的问题)。PRIME不依靠bbswitch进行电源管理,而是使用nouveau / kernel集成的电源。PRIME还允许您透明地使用连接到Nvidia芯片的输出AFAIK。在DRI2上运行时,需要进行一些配置(取决于您是否还安装了Bumblebee / bbswitch,(具体金额可能会有所不同),但没有任何未解决的问题。在此模式下也支持VDPAU(但仅再次使用nouveau驱动程序)。当在DRI3上运行时,它的使用似乎很简单(以至于Bumblebee可能在下一版本中获得对该模式的支持)。但是,您没有获得VDPAU支持,而且显然也没有Nvidia输出支持。
- 反向总理。这里的想法是将Nvidia卡用于包括台式机在内的所有设备,而仅将Intel芯片用作笔记本电脑显示器的输出接收器。nouveau(具有与上述相同的性能问题)和nvidia(例如,在Ubuntu下具有专用的nvidia-prime工具)都支持此功能。这意味着您根本无法省电(并且在所有阶段都不会增加功耗),但是与PRIME一样,您可以轻松并充分利用任何显示输出。在这种模式下,使用nvidia驱动程序时,您可以获得最好的专用卡。这也是您可以使用nvidia驱动程序使VDPAU在Nvidia芯片上工作的唯一配置。但是,由于i915驱动程序需要进行更改,因此也存在一些撕裂问题。此模式仅适用于DRI2。事实上,
请注意,诸如CUDA或OpenCL之类的东西不需要任何这些工具,只需进行一些配置即可,但是Bumblebee是一种轻松使用它们的方式,同时仍具有其他优势。
使用DRI3时,PRIME和Bumblebee可以同居,但是在DRI2下或切换到反向PRIME需要切换配置文件并重新启动X服务器。因此,根据您的需求,这是我的建议:
- 如果您不关心性能,但是关心易用性(主要是外部输出,如果受影响的话)和FLOSS,请使用PRIME。
- 如果您更关心性能,但经常以电池模式使用笔记本电脑并且不想一直重启X服务器,请选择Bumblebee。
- 如果您关心性能,并且大多数时候在连接AC时使用笔记本电脑(并且不关心节省更多的W),请使用nvidia 看看Reverse PRIME(您可以在运行时使用nvidia-prime切换到仅Intel模式)偶尔使用电池供电,但我不确定在此设置中Nvidia卡是否已关闭)。