9
3
2019
9

NVIDIA PRIME 配置笔记

本文来自依云's Blog,转载请注明。

这是由 NVIDIA 官方提供的新的双显卡配置方案(官方文档),需要最新的驱动及 Xorg 支持。其中 nvidia 驱动已经位于 Arch Linux 官方仓库中(版本号 435.21)。相关 Xorg 补丁还在 git 上,并没有新版本放出,所以需要自行编译包含补丁的版本。这里有现成的 PKGBUILD。我打包好的版本也提供下载

我的硬件是 ThinkPad T470p,Intel Corporation HD Graphics 630 核显和 GeForce 940MX 独显。核显的特点是:省电、支持视频编解码加速。独显的特点是:Minecraft 能开光影,FPS 也要高一点。用来跑火狐的话可以正确渲染 FishGL

配置方法如下。

首先把 bbswitch 啥的都卸载了吧。虽然注意点不卸载也没事,但是毕竟装着没意义还容易出问题。然后看看 /etc/modprobe.d 下有没有黑名单 nvidia 的驱动,给它取消了。我有一个 options nvidia_drm modeset=1 的配置,不知道有没有影响。

Xorg 这边要加一段配置。就保存在 /etc/X11/xorg.conf.d/nvidia.conf 好了。

Section "ServerLayout"
  Identifier "layout"
  Screen 0 "iGPU"
  Option "AllowNVIDIAGPUScreens"
EndSection

Section "Device"
  Identifier "iGPU"
  Driver "modesetting"
  BusID "PCI:0:2:0"
EndSection

Section "Screen"
  Identifier "iGPU"
  Device "iGPU"
EndSection

Section "Device"
  Identifier "dGPU"
  Driver "nvidia"
EndSection

那个 BusID 的值要自己看着 lspci | grep VGA 来改。

如果你之前是用N卡跑 Xorg 的,需要把 xrandr --setprovideroutputsource modesetting NVIDIA-0 之类的设置去掉。

然后重启系统就可以了。请做好通过 tty 或者 ssh 修复配置的准备。

默认情况下,Xorg 及其上的程序运行于i卡。使用 __NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia 环境变量来指定使用N卡。为了方便起见,做一个别名好了:

alias nvrun="__NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia"

然后就可以 nvrun minecraft-launcher 啦~

Minecraft BSL 光影效果

对了,要注意一下的是,这两个环境变量对视频硬解也是有效的。比如我如果给 mpv 使用这两个环境变量的话,mpv 就会黑屏(我的N卡不支持硬解……

Category: Linux | Tags: linux nvidia 显卡驱动 | Read Count: 41296
TripleHeadMonster 说:
Sep 04, 2019 08:09:09 AM

话说能在不用的时候把n卡关掉吗?还是说要自开机起一直给n卡通电?

Avatar_small
依云 说:
Sep 04, 2019 11:20:08 AM

得一直开着,不用的时候处于待机状态。

lyman 说:
Oct 03, 2019 01:02:48 AM

感谢分享,这个方案比 nvidia-xrun 更方便

Tee 说:
Oct 06, 2019 06:26:42 PM

感谢分享!这个方案比 optimus-manager 更方便(gdm+gnome shell)

Tee 说:
Oct 08, 2019 10:05:27 AM

似乎目前还不支持 扩展显示器 https://devtalk.nvidia.com/default/topic/1061293/linux/-435-17-am-i-observing-the-proper-results-with-the-new-prime-/post/5375031/#5375031

Avatar_small
依云 说:
Oct 08, 2019 02:33:22 PM

链接没提到扩展显示器呀。

Tee 说:
Oct 09, 2019 10:25:43 AM

emmm 我英文比较差劲,可能误会意思了,看见后面的楼层写着“have an issue with external (HDMI) displays”以为跟我一样的问题

out 说:
Oct 09, 2019 06:01:37 PM

mpv 应该可以设置 hwdec=vaapi-copy ,让N卡使用I卡的硬解。(在nvidia-xrun上没问题)

Avatar_small
依云 说:
Oct 10, 2019 12:48:26 AM

嗯,是可以的。CPU 使用率35%左右。使用I卡的时候是40%左右。而我使用默认的 vaapi(不 copy)只有7%。所以还是不要用N卡放视频啦。


登录 *


loading captcha image...
(输入验证码)
or Ctrl+Enter

| Theme: Aeros 2.0 by TheBuckmaker.com