Linux系统怎么配置双显卡?

(编辑:jimmy 日期: 2024/11/18 浏览:2)

感谢网友 鸢一雨音 的投稿

众所周知,自从高性能独立图形处理器出现之后,很多便携式计算机就会采取一种双显卡的设计:节能的核心图形处理器用于渲染常规的桌面环境,而高性能的独立图形处理器则负责渲染高需求的应用程序。这种技术被称作Optimus智能显卡切换。但是英伟达经常被Linux用户诟病的原因之一,便是一直不对Linux平台上心,不仅没有Linux下的Optimus支持,驱动程序更新也慢半拍。

这意味着,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启动器:

Linux系统怎么配置双显卡?

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

Linux系统怎么配置双显卡?

Linux系统怎么配置双显卡?

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

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

Linux系统怎么配置双显卡?

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

Linux系统怎么配置双显卡?

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

Linux系统怎么配置双显卡?

我们进入一个世界:

Linux系统怎么配置双显卡?

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

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

三、注意

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

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

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

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

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

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

相关推荐:

linux系统怎么用命令切换用户?

linux系统怎么增加swap分区空间小?

Linux下Chrome地址栏输入卡顿该怎么办?