如何让 Xorg 完全忽略我的显示适配器之一?

如何让 Xorg 完全忽略我的显示适配器之一?

我在具有以下显示适配器和 X 服务器的 x86_64 计算机上使用 Linux Mint:

# inxi -G
Graphics:  Card-1: Intel Xeon E3-1200 v2/3rd Gen Core processor Graphics Controller
           Card-2: NVIDIA GK106 [GeForce GTX 650 Ti Boost]
           Display Server: X.org 1.18.4 driver: nvidia tty size: 130x50 Advanced Data: N/A for root

但事实上,我只使用板载图形控制器进行显示。我希望 Xorg 忽略我的 nvidia 卡并避免使用它(这样我只能将它用于 CUDA 工作)。我的/etc/X11/xorg.conf说:

Section "ServerLayout"
    Identifier "layout"
    Screen 0 "nvidia"
    Inactive "intel"
EndSection

Section "Device"
    Identifier "intel"
    Driver "modesetting"
    BusID "PCI:0@0:2:0"
    Option "AccelMethod" "None"
EndSection

Section "Screen"
    Identifier "intel"
    Device "intel"
EndSection

Section "Device"
    Identifier "nvidia"
    Driver "nvidia"
    BusID "PCI:2@0:0:0"
    Option "ConstrainCursor" "off"
EndSection

Section "Screen"
    Identifier "nvidia"
    Device "nvidia"
    Option "AllowEmptyInitialConfiguration" "on"
    Option "IgnoreDisplayDevices" "CRT"
EndSection

...但显然这种“不活跃”还不够不活跃:如果我尝试在 nVIDIA 的 nsight 中调试 CUDA 代码,我会得到

fatal:所有CUDA设备均用于显示,调试时无法使用。

我想尝试从 中删除对 nvidia 适配器的引用/etc/X11/xorg.conf,但如果我这样做 - 文件会被重写。

所以:

  • xorg.conf我的目标应该是删除引用吗?
  • 如果是这样,我如何防止它被重写,或者确保它在没有 nVIDIA 卡的情况下被重写?
  • 如果不是,我该如何让 Xorg 完全忽略我的 nVIDIA 卡?也许是某种模块的摆弄?

编辑:

我尝试过使用nvidia-settings.我在主列表中选择了“Prime Profiles”,然后在“选择您想要使用的 GPU”中从“nVIDIA”切换到“Intel”。然而,这阻止了我完全使用 CUDA - 运行时无法识别任何可用的 GPU - 而在我至少能够运行(而不是调试)我的代码之前。而且,奇怪的是,这样做会让它/etc/X11/xorg.conf完全消失。

相关内容