我正在为自己打造一套拥有大量屏幕空间的漂亮设备。由于我过去遇到过视频驱动程序问题。我首先在这里寻求建议。
我想连接至少六个屏幕。像这样:6 屏设置
最好的选择是什么?有哪些陷阱?我最好不要使用封闭的二进制 blob 驱动程序。
用例场景:我正在编写一个必须与其他系统交互的软件。我希望能够看到所有这些系统、我的代码、大量日志文件和文档,而无需切换窗口/屏幕。只是为了更好地了解我正在做的事情。
更新
我最近更新到了 ubuntu 14.04,我的 radeon HD7880 带有六个 mini hd 输出,开箱即可使用,无需手动下载二进制驱动程序等。硬件加速也起作用了!太棒了!
答案1
您可以尝试ATI Radeon HD 5870 宽域 6卡或类似卡。作为一张卡,配置起来应该更容易。
该卡要求您的显示器支持 DisplayPort,或者您使用有源 DisplayPort 转 DVI/VGA 适配器。这是因为该卡无法驱动 6 个独立输出的时钟,而 DisplayPort 不需要每个端口都有单独的时钟。
答案2
我有一台 3 显示器设备,同时使用 blob 和 OSS 驱动程序(blob 性能略好,对 opencl 的支持也好得多)。这不是解决六显示器难题的办法。
带有 2 个 triplehead2gos 的双显示器卡足以实现 6 个显示器屏幕空间。
答案3
我已经浪费了两年的时间尝试让六屏设置正常工作。
我有
3 张 GeForce GTX 550 Ti 显卡
我使用的:
• 带有 KDM 的 LXDE
• Nvidia 310.14 驱动程序
将每个屏幕作为单独的 x 显示器运行。
我只能让 twinview 在两个显示器上工作。
使用 xinerama 创建一个大桌面。
有效的方法:
• 将壁纸扩展到所有屏幕(一个大桌面)
• 将窗口最大化到一个屏幕上,而不是所有六个屏幕
不工作:
•桌面上的 3D 硬件加速(我实际上可以玩一些游戏,只需稍加调整)
•xrandr 生成错误
•compiz 正确无误
•上次我检查时,unity 的多显示器支持非常糟糕(任何超过两个屏幕的东西都会变得很糟糕。
我的 xorg.conf 文件:
# nvidia-settings: X configuration file generated by nvidia-settings
# nvidia-settings: version 310.14 (buildd@komainu) Tue Oct 16 22:20:47 UTC 2012
Section "ServerLayout"
Identifier "Layout0"
Screen 0 "Screen0" 0 0
Screen 1 "Screen1" 0 1080
Screen 2 "Screen2" 1920 0
Screen 3 "Screen3" 1920 1080
Screen 4 "Screen4" 3840 0
Screen 5 "Screen5" 3840 1080
InputDevice "Keyboard0" "CoreKeyboard"
InputDevice "Mouse0" "CorePointer"
Option "Xinerama" "1" EndSection
Section "Files" EndSection
Section "InputDevice"
# generated from default
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "auto"
Option "Device" "/dev/psaux"
Option "Emulate3Buttons" "no"
Option "ZAxisMapping" "4 5" EndSection
Section "InputDevice"
# generated from default
Identifier "Keyboard0"
Driver "kbd" EndSection
Section "Monitor"
# HorizSync source: edid, VertRefresh source: edid
Identifier "Monitor0"
VendorName "Unknown"
ModelName "Samsung SMB2330H"
HorizSync 30.0 - 81.0
VertRefresh 56.0 - 75.0
Option "DPMS" EndSection
Section "Monitor"
# HorizSync source: edid, VertRefresh source: edid
Identifier "Monitor1"
VendorName "Unknown"
ModelName "Samsung SMB2330H"
HorizSync 30.0 - 81.0
VertRefresh 56.0 - 75.0
Option "DPMS" EndSection
Section "Monitor"
# HorizSync source: edid, VertRefresh source: edid
Identifier "Monitor2"
VendorName "Unknown"
ModelName "Samsung SMB2330H"
HorizSync 30.0 - 81.0
VertRefresh 56.0 - 75.0
Option "DPMS" EndSection
Section "Monitor"
# HorizSync source: edid, VertRefresh source: edid
Identifier "Monitor3"
VendorName "Unknown"
ModelName "Samsung SMB2330H"
HorizSync 30.0 - 81.0
VertRefresh 56.0 - 75.0
Option "DPMS" EndSection
Section "Monitor"
# HorizSync source: edid, VertRefresh source: edid
Identifier "Monitor4"
VendorName "Unknown"
ModelName "Samsung SMB2330H"
HorizSync 30.0 - 81.0
VertRefresh 56.0 - 75.0
Option "DPMS" EndSection
Section "Monitor"
# HorizSync source: edid, VertRefresh source: edid
Identifier "Monitor5"
VendorName "Unknown"
ModelName "Samsung SMB2330H"
HorizSync 30.0 - 81.0
VertRefresh 56.0 - 75.0
Option "DPMS" EndSection
Section "Device"
Identifier "Device0"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "GeForce GTX 550 Ti"
BusID "PCI:2:0:0"
Screen 0 EndSection
Section "Device"
Identifier "Device1"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "GeForce GTX 550 Ti"
BusID "PCI:2:0:0"
Screen 1 EndSection
Section "Device"
Identifier "Device2"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "GeForce GTX 550 Ti"
BusID "PCI:1:0:0"
Screen 0 EndSection
Section "Device"
Identifier "Device3"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "GeForce GTX 550 Ti"
BusID "PCI:1:0:0"
Screen 1 EndSection
Section "Device"
Identifier "Device4"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "GeForce GTX 550 Ti"
BusID "PCI:3:0:0"
Screen 0 EndSection
Section "Device"
Identifier "Device5"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "GeForce GTX 550 Ti"
BusID "PCI:3:0:0"
Screen 1 EndSection
Section "Screen"
Identifier "Screen0"
Device "Device0"
Monitor "Monitor0"
DefaultDepth 24
Option "Stereo" "0"
Option "metamodes" "DFP-0: nvidia-auto-select +0+0"
SubSection "Display"
Depth 24
EndSubSection EndSection
Section "Screen"
Identifier "Screen1"
Device "Device1"
Monitor "Monitor1"
DefaultDepth 24
Option "Stereo" "0"
Option "nvidiaXineramaInfoOrder" "DFP-2"
Option "metamodes" "DFP-2: nvidia-auto-select +0+0"
SubSection "Display"
Depth 24
EndSubSection EndSection
Section "Screen"
Identifier "Screen2"
Device "Device2"
Monitor "Monitor2"
DefaultDepth 24
Option "Stereo" "0"
Option "metamodes" "DFP-0: nvidia-auto-select +0+0"
SubSection "Display"
Depth 24
EndSubSection EndSection
Section "Screen"
Identifier "Screen3"
Device "Device3"
Monitor "Monitor3"
DefaultDepth 24
Option "Stereo" "0"
Option "metamodes" "DFP-2: nvidia-auto-select +0+0"
SubSection "Display"
Depth 24
EndSubSection EndSection
Section "Screen"
Identifier "Screen4"
Device "Device4"
Monitor "Monitor4"
DefaultDepth 24
Option "Stereo" "0"
Option "metamodes" "DFP-0: nvidia-auto-select +0+0"
SubSection "Display"
Depth 24
EndSubSection EndSection
Section "Screen"
Identifier "Screen5"
Device "Device5"
Monitor "Monitor5"
DefaultDepth 24
Option "Stereo" "0"
Option "metamodes" "DFP-2: nvidia-auto-select +0+0"
SubSection "Display"
Depth 24
EndSubSection EndSection
Section "Extensions"
Option "Composite" "Enable" EndSection
答案4
我在 Ubuntu 14.04 中使用 GeForce GT 640 和 GeForce GT 740 获得了六台显示器。我使用的是 Nvidia 331.113 二进制驱动程序。我能够使用 Nvidia X Server Settings 应用程序配置显卡。我必须在“服务器布局”中添加第二个“屏幕”,这是我使用该设置应用程序完成的。
2015 年 1 月 8 日更新:我现在有 7 台显示器(包括一台 4K 显示器,并具有第八台显示器的功能),它们运行在华硕 Z170-K 主板上的两块显卡(GTX 970 和 GT 740)上。我使用的是 Ubuntu 14.04.03 和 XFCE,以及来自https://launchpad.net/~graphics-drivers/+archive/ubuntu/ppa(Steam 在 358 上崩溃,建议使用 352)。请注意,Gnome 无法很好地处理多个 X 屏幕,但 XFCE 可以完美处理三个 X 屏幕。我在 GT 740 上有两个显示器,左边的屏幕用于连接两个显示器;在 GTX 970 上有两个 4K 和两个显示器,右边的屏幕用于连接 GT 740 上剩下的两个显示器。启动时有点傻,所以我运行了 xrandr 命令来调整中间三个显示器的位置。我不是 X 专家,只有几年的 Linux 经验,所以这花了我不少时间。如果你不想把这当作一种爱好,也不讨厌 Windows,那就用 Windows 吧。
多卡设置的优点在于,您可以随着时间的推移进行构建,并根据需要逐步引入更新的(更常见的)部件。