Nvidia Prime的最终折腾方案

警告
本文最后更新于 2020-05-25,文中内容可能已过时。

如题.

前言

从折腾好笔记本上的独立显卡到目前已经稳定运行了四个多月左右, 写一下大概的解决方案.

Nvidia-Prime

Nvidia-PrimeNvidia官方给Linux用户施舍的兼容Optimus显卡的解决方案.

原因

我的笔记本配置:

如图. 由于混迹于哔哩哔哩某些原因需要进行视频渲染, 本身又是个码农, 还是个在校学生, 上个网课之类的, 平时还要背着电脑到处跑, 于是就需要寻找一个完美点的显卡解决方案.

尝试过Bumblebee, 由于要配合bbswitch使用, 而我的笔记本由于比较特殊, 无法用软件开启或者关闭显卡; 可以从BIOS关闭显卡, 但是每次都很麻烦; 显卡状态改变后笔记本需要彻底断电然后冷启动才能够正确的加载显卡活动…

于是最终就只能抛弃了Bumblebee.

就在不久之前, Linus宣布发布Linux 5.6, 介绍中加入了对RTX系列显卡的支持. Nvidia官方又推出了更新进度虽然缓慢但有总比没有好的Nvidia-PrimeLinux用户使用, 在Linux上折腾显卡才显露出一丝曙光.

过程

$ sudo pacman -Syyu nvidia nvidia-prime nvidia-settings nvidia-utils

好了, 没有了.

这几个包可以让你的显卡转起来了. 美中不足的就是它不能有效的关停显卡, 而是让显卡以省电模式继续转.

运行需要独立显卡的程序时, 使用prime-run xxx即可.

一些软件适配

Davinci Resolve

Davinci Resolve需要安装opencl-nvidia才能够正常运行. 否则会报ld4CXX相关的错误.

$ sudo pacman -Syyu opencl-nvidia

Davinci Resolve启动前有一定延迟, 耐心等待即可.

Osu! Lazer

使用prime-run osu-lazer之后, 调整窗口为全屏.

Minecraft Launcher (Offcial, HMCL)

卸载Noto Sans系字体, 否则打开launcher之后界面会保持黑色, 游戏启动时会异常crash.

已知BUG/影响使用体验的现象

Davinci Resolve

调出某些子窗口时全部黑屏, 摸索着关掉子窗口之后恢复正常.

例如剪辑panel中试图更改片段时长, 或者片段速度时, 在你右键菜单选中这一项并按下时整个屏幕会黑掉. 按一下Esc则又会恢复.

无法使用Fcitx进行中文输入. ibus没有测试.

可能的解决方案:

可以尝试使用Bumblebee(不带bbswitch)与primusrun. 使用primusrun运行的Davinci Resolve不会出现此类BUG. 但是primusrunBumblebee模块的性能较低, 使用Fusion制作一些复杂一点的特效时, Davinci Resolve会崩溃.

Osu! Lazer

桌面特效会被强制关闭.

无法输入中文.

Minecraft Launcher (Offcial)

无法输入中文. 无论是否用独立显卡运行, 都不能输入中文.

Wine

使用prime-run运行的wine应用程序无法在全屏显示状态下输入中文. 非全屏显示时没有问题.

使用独显运行时字体渲染有些发虚.

CUDA

需要使用CUDA的软件包在安装CUDA之后使用时性能损耗明显, 并且崩溃有些频繁, 只能先凑合着用…

结尾

如果你有什么更好的解决方案, 希望能提供在评论区, 不胜感谢.

0%