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

wul*_*der 10 nvidia xorg multiple-monitors intel-graphics drivers

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

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

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

我按照这篇博文中的说明进行操作

配置文件:

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

这是一篇相关的 StackOveflow 帖子

Mik*_*Do- 15

自 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 |
|__________|__________|__________|
Run Code Online (Sandbox Code Playgroud)

如果您正在运行 nvidia 卡并希望通过嵌入式图形 (intel) 输出第三个屏幕,则应该使用以下内容:

配置文件

# 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
Run Code Online (Sandbox Code Playgroud)

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

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
Run Code Online (Sandbox Code Playgroud)

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

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


naz*_*yev 5

比在 MikaDo-post 中简单一点。

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

BIOS 设置:

Primary GPU: PCI Express
IGPU Multi-monitor: Enabled
Run Code Online (Sandbox Code Playgroud)

在带有 NVIDIA 驱动程序的 Ubuntu 14.04 上为我工作(不是 Nouveau,实际上并没有尝试 Nouveau),就像原始文章中描述的一样(http://us.download.nvidia.com/XFree86/Linux-x86/319.12/ README/randr14.html)(必须先睡觉!:-))

只需找出Nvidia BUS ID

nvidia-xconfig --query-gpu-info
Run Code Online (Sandbox Code Playgroud)

并且不得不将最终命令放在 .xprofile 中

#!/bin/sh
xrandr --setprovideroutputsource modesetting NVIDIA-0
xrandr --auto
Run Code Online (Sandbox Code Playgroud)

然后使用本机 Ubuntu 显示设置 (GUI) 配置显示布局