计算机有两个显卡:(1) NVidia RTX 2080 Ti 12G(在 PCIe 3x 上)和 (2) NVidia GT710(在 PCIe 2x 上)。主板是Tyan S7065,两个Xeon,芯片组Intel C602。这个想法是使用 (1) 进行 CUDA/OpenCL 计算,(2) 用于 UI(包括 OpenGL 3D,如它可以提供的)。当然,使用专有的 NVidia 驱动程序,因为 CUDA/OpenCL 需要它。
系统是 Ubuntu 18.04.4,带有 HWE Kernel 5.3.0-28-generic(内核 4.15 也会发生同样的情况)。驱动程序是 NVIDIA-SMI 440.59,驱动程序版本:来自 PPA 的 440.59,CUDA 版本:10.2
卡 (1) 相当大,因此实际上只能将其放置在一个特定的插槽中。不幸的是,主板将该插槽中的卡视为主显卡,并且 BIOS 似乎没有设置来更改此设置。因此 UI 出现在 (1) 上。我们确实找到了一种将 X.org UI 移动到 (2) 的方法,但我们还需要移动控制台输出,并且希望得到如何操作的建议。
我们确实看到了PCI-STUB 与 VFIO-PCI并尝试了两种建议的解决方案,但似乎没有任何效果:
只有一个帧缓冲区 /dev/fb0,并且位于 (1)
我们将 intel-iommu=on pci-stub.ids=10de:1e07,10de:10f7,10de:1ad6,10de:1ad7 添加到内核参数(这些都是与 (1) 关联的 PCI 设备),没有任何更改。
答案1
它不是控制台。这安慰在 Linux 中是一个独特的东西,它可以是串行设备、并行设备或内核虚拟终端。你所说的是移动 KVT。
只有一个帧缓冲区
有一种方法可以将 KVT 移动到其他帧缓冲区。可以在内核命令行引导时完成此操作,也可以在运行时使用实用程序进行调整。这种现象自 20 世纪 90 年代以来就已存在;事实上,长期以来,一些 Linux 操作系统已经抛弃了这些实用程序,尽管它们仍然可以工作。
但它有一个前提条件,那就是要移动到的另一个帧缓冲区。
同样的先决条件适用于运行基于帧缓冲区的用户模式虚拟终端。它们也需要帧缓冲区。
因此,首先为您希望它们出现的显示适配器获取另一个帧缓冲区。
进一步阅读
- https://unix.stackexchange.com/a/566826/5132
- https://unix.stackexchange.com/a/177209/5132
- 乔纳森·德博因·波拉德 (2018)。 ”linux-vt”。 设备。诺什工具集。
- 乔纳森·德博因·波拉德 (2018)。 ”linux-控制台”。 设备。诺什工具集。