如何让两张 NVIDIA 显卡同时在 4 个屏幕上工作?

如何让两张 NVIDIA 显卡同时在 4 个屏幕上工作?

我有 2 个 NVIDIA 显卡:Nvidia GT730 2GB,Nvidia NVS300,256kb。

blue@blue-S5500BC:/var/log$ lspci|grep -i vga
02:00.0 VGA compatible controller: NVIDIA Corporation GK208B [GeForce GT 730] (rev a1)
04:00.0 VGA compatible controller: NVIDIA Corporation GT218 [NVS 300] (rev a2)

我正在使用带有 xfce 的 XUbuntu 20.04。我主要用我的电脑来开发软件,所以我不太关心 3D 加速,我不玩游戏,也不需要 3D 性能,但问题是我的性能非常非常差。

看来我拥有的辅助显卡 NVIDIA NVS300 仅适用于 NVIDIA 驱动程序版本 340,这似乎与内核 5.4.0-42 不兼容。

如果我安装 nvidia 专有驱动程序 440,那么它与 GT730 兼容,但它不能与其他显卡 NVS300 一起使用:根据日志,专有驱动程序 440 不支持 NVS300。

我已经切换到 nouveau 驱动程序,系统可以运行,但性能很差,无法使用,而且很马虎。

在实时 USB 安装期间,系统检测到 4 个屏幕,并且非常实用,但是一旦我在新分区中安装操作系统,它的性能就会非常差。

问题是:你们有什么建议?是否可以同时安装两个 nvidia 驱动程序?NVS300 安装 340 版,GT730 安装 440 版?由于我不需要 3D 加速,我如何才能找出 nouveau 驱动程序性能如此差的原因?请给我一些建议,因为我需要启动一个项目,而使用 Windows 10 对我来说不是一个选择。

答案1

将我的原始评论转换为答案,因为它似乎有所帮助(并添加更多细节)。

您询问如何进行的建议;我看到了几种可能的方法来解决您的问题。

1.同时运行两个不同版本的 Nvidia 驱动程序

我不是这方面的专家,但我的感觉是,这至少会很棘手(需要自行编写的配置来/etc/X11/xorg.conf为正确的设备调用正确的驱动程序),甚至是不可能的(这两个驱动程序之间可能存在冲突,如果不修改驱动程序的源,则无法解决,而 Nvidia 驱动程序是闭源的)。

考虑到旧版本的驱动程序(版本 340)无论如何都无法在较新的内核上运行,并且您可能不想长期使用旧内核,这种方法似乎不仅非常复杂,而且不太面向未来。除非我别无选择,否则我不会尝试探索这一点。

2. 让 Nouveau 驱动程序顺利运行

由于您说您的四个屏幕在实时系统(从 USB 记忆棒)上运行顺畅,并且实时系统使用开源 Nouveau 驱动程序,因此看起来至少可能的使 Nouveau 驱动程序能够顺利运行,即使它们在您安装的系统上不能顺利运行。

因此,我将研究实时系统和已安装系统之间的差异:

  • 这两个系统使用哪个版本的Nouveau驱动程序?
  • 使用的驱动程序之间是否存在配置差异,例如Xorg.conf(参见https://nouveau.freedesktop.org/wiki/MultiMonitorDesktop)?
  • 这两个系统运行的是哪些内核版本?
  • 您能在日志消息中找到任何相关的差异吗(例如/var/log/Xorg.0.log)?
  • ETC。

减少这些差异很可能会帮助你找到解决方案。

3. 使用相同的显卡

为了完整起见,我想提一下这一点:您有一张 GT730 和一张 NVS300 卡。可能值得考虑用一张额外的 GT370 卡替换旧的 NVS300 卡。这样,您将拥有两张 GT370 卡,这本来就不容易出错。虽然这种方法要花一点钱,但很可能花费的时间最少。由您决定您喜欢哪种。;-)

相关内容