![Nvidia PRIME Render Offload-默认情况下使用 Nvidia,但有些窗口使用 Intel?](https://linux22.com/image/1170524/Nvidia%20PRIME%20Render%20Offload-%E9%BB%98%E8%AE%A4%E6%83%85%E5%86%B5%E4%B8%8B%E4%BD%BF%E7%94%A8%20Nvidia%EF%BC%8C%E4%BD%86%E6%9C%89%E4%BA%9B%E7%AA%97%E5%8F%A3%E4%BD%BF%E7%94%A8%20Intel%EF%BC%9F.png)
我正在使用带有 Nvidia 二进制驱动程序 440.48.02 的 Kubuntu 19.10。我有以下 GPU 硬件:
- 英特尔 UHD 630(“iGPU”)
- 笔记本电脑内置专用 GPU:RTX 2080 Max-Q(“dGPU”)
- 通过 Thunderbolt 3 连接的外部 GPU:RTX 2080 Ti(“eGPU”)
我的主要且唯一的显示器是通过 DisplayPort 连接到 eGPU 的 5120x1440 120Hz 显示器。笔记本电脑有一个已关闭的显示面板。
我将 PRIME 配置文件设置为“按需”,但所有 Vulkan 和 OpenGL 上下文都默认为 eGPU。没问题。
我想要的是能够强制某些窗口在 Intel iGPU 上渲染,或者理想情况下,甚至是 dGPU。到目前为止,我尝试使用命令prime-*
或都没有成功xrandr --setprovideroffloadsink
。
卸载到其他 GPU 的目的是因为某些充分利用 eGPU 的窗口(例如 Vulkan 游戏)可能会导致在 eGPU 上渲染的其他窗口性能非常非常差。因此,能够卸载并利用我的所有图形硬件将是一件好事。
$ xrandr --listproviders
Providers: number : 3
Provider 0: id: 0x1b8 cap: 0x0 crtcs: 4 outputs: 6 associated providers: 0 name:NVIDIA-0
Provider 1: id: 0x384 cap: 0x0 crtcs: 0 outputs: 0 associated providers: 0 name:NVIDIA-G1
Provider 2: id: 0x209 cap: 0x6, Sink Output, Source Offload crtcs: 3 outputs: 3 associated providers: 0 name:modesetting