Linux 中的外部 GPU 系统?

Linux 中的外部 GPU 系统?

有人知道在 Linux 下要有一个可以工作的外部 GPU 系统 (eGPU) 需要什么吗?我刚刚看到这篇关于 DIY eGPU 系统的帖子:

http://forum.tabletpcreview.com/hardware/40268-diy-egpu-tablet-pcs-experiences-benchmarks-setup-ect.html

我发现提到了这一点,我认为也是相关的:

我的系统具有可切换显卡。我还能使用 eGPU 吗?

是的,你可以。设置 1.x(视频卡->混合图形.dedicated=off)允许在 Series-5 或更旧的芯片组上完全禁用专用图形组件,从而释放 32 位资源来托管桌面 eGPU。如果您的主视频卡是 Intel 4500MHD、HD 或 HD3000,那么甚至可以进行 x1.Opt NVIDIA 设置。

答案1

我可以确认它在 12.04 中可以工作。在 Thinkpad X220 上使用 PE4H + EC2C 进行了测试,使用的是 Nvidia GTX 560 Ti。棘手的部分是获得一个可以工作的xorg.conf

我需要 Nvidia 驱动程序:

sudo apt-get install nvidia-current

您需要找到显卡的正确 PCI 总线。

lspci给我:

05:00.0 VGA compatible controller: NVIDIA Corporation GF110 [GeForce GTX 560 Ti] (rev a1)

因此在"Device"的部分中xorg.conf,我设置了:

Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    BusId          "PCI:5:0:0"
    VendorName     "NVIDIA Corporation"
EndSection

然后在重新启动或 Xorg 重启后使用 nvidia-settings 来配置显示器分辨率。

值得注意的是,它在 Windows 上比在 Linux 上工作得更好,我不得不禁用 Compiz,因为它滞后太多。如果我能同时获得两张卡(HD3000 + Nvidia),我会更新。

答案2

这是一个有趣的想法,我不明白为什么它在技术层面上行不通,因为 Linux 确实支持 ExpressCard 设备(作为 PCIE),所以另一端的提升器应该可以工作,它也应该可以检测到显卡。从那里开始,这只是使用 nvidia 驱动程序的一个案例。

然而有些事情可能会让你感到悲伤:

  • 您可能需要手动添加 ExpressCard 模块:

    sudo modprobe pciehp pciehp_force=1
    

    也可以自动执行此操作

  • 假设内置显卡不是 Nvidia,您可能会遇到驱动程序和配置问题。Nvidia 驱动程序仍然需要一个相当静态的Xorg.conf文件,因此您需要手动设置两个配置,一个用于板载(这样它就知道在没有外部卡时该做什么),另一个用于存在外部卡时的布局。

    我把这个问题过于简单化了——让 X 表现得更好可能真的很令人头痛。

  • 您将无法热插拔此配置。您需要重新启动 X(及其已加载的所有应用程序)才能切换显卡。

  • 我认为您无法通过外接卡将内容渲染到内置屏幕上;也就是说,您需要外接显示器。您链接到的页面将其显示在笔记本电脑的屏幕上,但我不明白如果不进行某种额外的硬件破解,它怎么可能实现。编辑:我从那篇文章中看到它使用 Optimus。这部分在 Linux 中不起作用;您需要一个外接显示器。

如果您不确定它是否有效,我就不会在这上面花太多钱。

如果您有 130 美元,您不介意损失(或者尝试在 ebay 上收回),那么请从 ExpressCard 转接卡和便宜的最低端 Nvidia 卡开始。如果它足够低端,您可能无需合适的 ATX PSU 即可使用。看看它是否有效...如果有效,请购买合适的 PSU 和不错的显卡,然后继续前进。

如果你确实让它工作了,请将其记录在某处

答案3

装有 Ubuntu 18.04.1 和 Windows 10 Pro 1909 的旧笔记本电脑上的外部 GPU

许多较旧的笔记本电脑仍具有可接受的 CPU,但缺少 GPU/图形区域。有硬件可让台式机 GPU 轻松连接到笔记本电脑,价格比新笔记本电脑低得多。大多数外部 GPU 硬件都通过 USBc/Thunderbolt 连接,而大多数较旧的笔记本电脑不提供该接口。还有其他选项,如 M2 或 expresscard 连接,可提供所需的图形升级。

EXP GDC Beast 适配器可将笔记本电脑的 ExpressCard 插槽转换为外部 PCIe 插槽,从而允许插入台式机 GPU。其他版本可使用 M2 适配器,但要连接这些适配器,需要打开笔记本电脑外壳。当前 Linux 内核和 Windows 版本已修复了适配器报告的旧问题。外部 GT 640 GPU(1GB 视频内存)的设置很简单:在 BIOS/UEFI 设置中,关闭独立显卡并确保 ExpressCard 插槽已启用。

硬件

所用的笔记本电脑是联想 W520,配有 Nvidia 1000M Quadro 显卡和 expresscard 插槽。这是一台 2011 年的 64 位 UEFI 机器,预安全启动,双启动 64 位 Ubuntu 18.04.1(内核 4.15)和 64 位 Windows 10 Pro 1909 版本 18363.628。适配器是 Semoic Express Card Mini PCI-E 版本 Expresscard V8.0 EXP GDC Beast PCIe PCI-E PCI 笔记本电脑外部独立显卡底座(售价 40.00 美元)。电源是戴尔 D220P-01 电源 P/N:MK394(20.00 美元)。GPU 是 1GB 视频内存 GT 640。考虑购买/制作一个外壳,以防止手指/电缆碰到 GPU 风扇。

Ubuntu 设置

关闭使用 390 驱动程序在内部 Nvidia Quadro 上运行的 Ubuntu 18.04。在笔记本电脑上,将 expresscard 插入适配器电缆。在适配器上,插入 GPU 和 6 针电源线。未使用从适配器向 GPU 提供额外电源的电缆。插入电源,其指示灯保持黄色,直到笔记本电脑通电,然后变为绿色。启动笔记本电脑并选择 BIOS/UEFI 设置。确保图形模式设置为内部(非独立或自动)。确保 expresscard 插槽已启用。保存并退出。启动笔记本电脑,它将找到新硬件,并在笔记本电脑的显示屏上使用现有的 Nvidia 390 驱动程序(标准存储库提供的最新驱动程序)。无需加载其他模块,无需 xorg.conf,也无需使用 pci=nocrs 等内核选项。

如果显示器连接到外部 GPU,它将显示位于笔记本电脑显示屏右侧的屏幕。在“设置/显示”部分调整屏幕位置。现在运行“软件和更新”,选择“附加驱动程序”选项卡,并将 Nvidia 驱动程序更新为现在提供的 345 版本。重新启动,Ubuntu 应该使用 GT 640 GPU 的 345 驱动程序。关闭笔记本电脑将切断 GPU 的电源,并使电源处于待机状态(黄灯)。

Windows 安装程序

查看安装视频https://www.youtube.com/watch?v=G0YMBvNFgyE最有价值的部分是警告在自动 Windows Nvidia 设备安装过程中需要长时间等待,并且没有进度条。(插入所有设备),启动 Windows,让它找到新设备,并让它更新驱动程序。没有进度条,所以请耐心等待它完成。重新启动,新设备应该可以看到并使用。将使用笔记本电脑屏幕,如果显示器连接到 GPU,它将在笔记本电脑显示屏的右侧显示第二个屏幕。

两种设置均未出现错误。请注意,内置 Quadro 1000M 是 2GB 卡,因此这款 W520 上 2GB 的 GPU 可能不会出现任何问题。具有更大视频内存的 GPU 可能会出现问题。最初发布的带有 32 位操作系统的机器(如联想 W520)可能会出现 PCI 缓冲问题,位于内存下 4G 的顶部。解决方案可在以下支持站点上找到: https://egpu.io/forums/pc-setup/fix-dsdt-override-to-correct-error-12/

相关内容