正文  电脑教程 > 服务器教程 >

Linux系统如何配置双显卡

  Linux用户必须在一次会话中一直使用核心显卡或者一直使用独立显卡;一直使用核心显卡会很节能,但是Hold不住某些应用程序(比如现在很多巨型的3D...

  Linux用户必须在一次会话中一直使用核心显卡或者一直使用独立显卡;一直使用核心显卡会很节能,但是Hold不住某些应用程序(比如现在很多巨型的3D游戏已经通过Steam登陆了Linux平台),而一直使用独立显卡将会非常耗电,即使你在做很简单的工作。

  所幸的是,Linux平台上有一个有名的第三方项目,名叫Bumblebee(大黄蜂)。这个项目目的就是给Linux提供类似Optimus技术的支持。这个项目以前并不出名,但是它某个版本的安装脚本install.sh多敲了一个空格,从而错误地删掉了所有用户的整个/usr,这个事件使它迅速出名并获得了大量的技术支持。这么想也是因祸得福吧。

  一、配置bumblebee

  笔者所有指令对应于Arch Linux 64位版。

  闲话收住,现在开始正式配置我们的双显卡。首先,安装英伟达官方的显卡驱动程序:

  sudo pacman -S nvidia

  选择和你目前的操作系统相匹配的驱动程序,比如笔者的是Linux 4.9内核,我就应该选带有linux49字样的包。等待安装完成,期间你应该会看到类似的输出:

Linux系统如何配置双显卡

  然后安装bumblebee软件包:

  sudo pacman -S bumblebee

  安装完成之后,记得检查当前用户是否在用户组“bumblebee”内。如果不是,请手动添加。重启计算机,以使英伟达驱动被正确加载,并使bumblebee守护进程启动。

  二、测试bumblebee

  Bumblebee提供了指令optirun,以使用户在会话仍然以集成显卡渲染的情况下,使用独立显卡渲染指定的应用。我们使用加了光影和视差贴图材质包的MC(Minecraft,我的世界)来检查独立显卡的运行状态。

  首先我们采用常规的方式启动MC,我用的是HMCL启动器:

  下面是比较吃配置的资源包和光影:

  从第二张截图还能看出,MC识别出了我们的显卡型号:Intel HD Graphics 5500,也就是我的集成显卡。

  我们新建一个世界,进去看看:

  这根本就不能正确渲染。下面我们使用optirun指令来执行MC:

  进入到光影选项,发现MC已经正确识别了我们的显卡:

  我们进入一个世界:

  嗯。光影正常工作了,帧率也很高,这意味着这个程序一定是高性能独立显卡在渲染了。

  如果你能正常使用optirun指令,那么你的配置就完成了。

  三、注意

  如果你遇到了使用optirun指令会让整个会话崩溃的情况,那么有两个地方你需要检查:

  第一,你是否安装了正确的nvidia包;

  第二,尝试使用最新的bumblebee仓库里的代码自行编译,不要使用发行版仓库提供的版本。

  Bumblebee项目不兼容Vulkan(新的图形接口),这意味着如果你想体验Vulkan就必须让整个会话使用独立显卡渲染。

  在Steam下,可以通过修改游戏的高级启动选项为:optirun %command% 来指定该游戏运行在独立显卡上。

  虽然Bumblebee有很多缺陷,包括不能支持Vulkan,但是对于Linux用户来说,它是在Linux上实现Optimus技术的唯一途径。希望本教程能对部分Linux用户有所帮助。