如何在双显示器设置上同时运行英特尔和 Nvidia 显卡驱动程序?

如何在双显示器设置上同时运行英特尔和 Nvidia 显卡驱动程序?

我正在尝试让 Intel 和 Nvidia 显卡与两个显示器协同工作。一个显示器应该使用 Intel 显卡,另一个显示器使用 Nvidia 显卡。当然,我只想使用一个键盘和一个鼠标在两个屏幕之间切换。Bumblebee 对我来说不起作用。

我不想使用该xserver-xorg-video-all软件包,因为我需要 Nvidia 卡来玩游戏,而且我不能只使用一张显卡,因为我需要一张用于 KVM 虚拟化,另一张用于我的 Linux 桌面

所以我尝试安装驱动程序并手动配置 Xserver。Nvidia 驱动程序正在运行,我获得了视频输出。但是使用 Intel 卡时没有获得视频输出。

我跟着这篇博文中的说明

配置文件:

/etc/X11/xorg.conf.nvidia
/etc/X11/xorg.conf.intel
/etc/lightdm/lightdm.conf

以下是相关的 StackOveflow 帖子

答案1

自 2013 年以来,使用图形卸载已成为可能(参见http://us.download.nvidia.com/XFree86/Linux-x86/319.12/README/randr14.html

以下使用免费驱动程序(nouveau),并且无法使用 nvidia 的专有驱动程序。

我已经用了几个月了,对我来说效果很好。这是我的设置:

 __nvidia__ __intel___ __nvidia__
|          |          |          |
|  DVI-I-1 |   VGA-1  |  DVI-D-1 |
|__________|__________|__________|

如果您正在运行 nvidia 卡并且想要通过嵌入式显卡(英特尔)输出第三个屏幕,您应该使用以下命令:

Xorg配置文件

# Discrete Card as Primary GPU

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

Section "Device"
    Identifier  "nouveau"
    Driver      "nouveau"
    BusID       "PCI:1:0:0" # see man lspci
EndSection

Section "Screen"
    Identifier "nouveau"
    Device "nouveau"
EndSection

Section "Device"
    Identifier  "intel"
    Driver      "modesetting"
EndSection

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

现在将其添加到您的会话管理器启动脚本:

xrandr --setprovideroutputsource modesetting nouveau
xrandr --output VGA-1 --mode 1920x1080
sleep 1s
xrandr --output VGA-1 --mode 1920x1080 --pos 1920x0 --rotate normal --output DVI-D-1 --mode 1920x1080 --pos 3840x0 --output DVI-I-1 --mode 1920x1080 --pos 0x0

这些粘贴来自我自己的配置,应该进行调整以适合您自己的用例。完整文档可在此处获得:http://us.download.nvidia.com/XFree86/Linux-x86/319.12/README/randr14.html

在此配置中,nvidia GPU 完成所有渲染工作。Intel iGPU 仅显示主 GPU 发送给它的任何内容。请注意,nvidia GPU 在发送帧进行显示时完全不知道 iGPU 的状态。这意味着可能会出现相当多的撕裂(水平和对角线!)。对于那些可能想要尝试的人,您不能使用 Xorg.conf 中的“TearFree”选项。

答案2

比 MikaDo-post 稍微简单一些。

配备 GT 1030(DVI、HDMI)和 Intel HD 4600(VGA 输出)的三重显示器。

BIOS 设置:

Primary GPU: PCI Express
IGPU Multi-monitor: Enabled

我在使用 NVIDIA 驱动程序(不是 Nouveau,实际上没有尝试过 Nouveau)的 Ubuntu 14.04 上使用它,效果与原文中描述的完全一样(http://us.download.nvidia.com/XFree86/Linux-x86/319.12/README/randr14.html)(必须先在外面睡一觉!:-))

只需找出 Nvidia BUS ID

nvidia-xconfig --query-gpu-info

并且必须将最终命令放入 .xprofile 中

#!/bin/sh
xrandr --setprovideroutputsource modesetting NVIDIA-0
xrandr --auto

然后使用原生 Ubuntu 显示设置(GUI)配置显示布局

答案3

我按照 MikaDo 的解决方案在 Ubuntu 18.04 中成功让它工作

OS : ubuntu 18.04  
GPU : nvidia 1080ti @ nvidia 410.104 driver / CUDA 10.0  
MB: MSI Z370 tomahawk  
CPU: intel core i7 8700  
Screen1 : LG 29" 21:9 @ 1080ti/DP  
Screen2 : PHILIPS 27" 4K @ Intel Graphic/HDMI on motherboard 

1.在 bios 中启用 iGPU 选项并安装英特尔显卡驱动程序

2.在/etc/X11/xorg.conf中添加以下几行:(编辑前记得备份)

Section "Device"
    Identifier "intel"
    Driver "modesetting"
EndSection

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

3.

sudo xrandr --setprovideroutputsource modesetting NVIDIA-0
sudo xrandr --auto
  1. 重启。然后你会看到两个屏幕都显示正常。(但可能无法在正确的分辨率下工作) 在此处输入图片描述

5.关注本教程添加显示模式

就我而言 在此处输入图片描述 在此处输入图片描述 在此处输入图片描述 在此处输入图片描述

相关内容