有没有支持Linux系统的 显卡拓展坞?
主流显卡坞基本都是thunderbolt雷电接口和oculink接口。
oculink可以理解为PCIe的延伸,不存在Linux不支持PCIe的问题。
至于雷电,只要你的笔记本有雷电接口或者USB4接口,那你就可以连接雷电显卡坞。
Linux内核内置了雷电驱动,可以用 lsmod 列出当前内核加载的雷电驱动状态:
eechen@linux:~$ modinfo thunderbolt|grep desc
description: Thunderbolt/USB4 core driver
eechen@linux:~$ lsmod|head -n1 && lsmod|grep thunderbolt
Module Size Used by
thunderbolt 569344 1 typec可见当前内核已经加载了雷电驱动,该驱动正在被typec使用。
另外,Linux可以用博尔特 boltctl 查看通过雷电或USB4连接的雷电显卡坞的链路状态和握手约定的下载/上传带宽:
eechen@linux:~$ boltctl
● HexaSoul Nano X EGPU Dock
├─ type: peripheral
├─ name: Nano X EGPU Dock
├─ vendor: HexaSoul
├─ uuid: xxx
├─ generation: Thunderbolt 3
├─ status: authorized
│ ├─ domain: xxx
│ ├─ rx speed: 40 Gb/s = 2 lanes * 20 Gb/s
│ ├─ tx speed: 40 Gb/s = 2 lanes * 20 Gb/s
│ └─ authflags: none
├─ authorized: xxx
├─ connected: xxx
└─ stored: xxx
├─ policy: iommu
└─ key: nostatus为authorized,Thunderbolt 3的rx/tx速度为40 Gb/s,说明你的雷电3显卡坞处于正常状态。如果速度只有20 Gb/s,那大概率是你的雷电线材有问题,不能充分利用雷电3的带宽,对本地大模型推理没什么影响(显存足够时),但对游戏影响很大。
最后一点就是,如果你在Linux外接显卡玩游戏,应该禁用笔记本屏幕,使用接入外接显卡(eGPU)的显示器,并确认Xorg/Wayland相关的窗口管理器和合成器运行在外接显卡下,以避免外接显卡把渲染好的画面通过雷电/oculink数据线回传到内存。数据不走回头路,才能确保外接显卡的性能。
Linux上A卡可以用amdgpu_top --smi,N卡可以用nvidia-smi查看哪些进程正在使用GPU,比如:
┌┤ Processes ├──────────────────────────────────────────────────────────────
│┌┤ #0 AMD Radeon 880M Graphics ├──────────────────────────────────────────
││ Name | PID |KFD| VRAM | GTT |CPU |GFX |COMP|DMA |VCNU|VPE |
││ amdgpu_top | 630730| | 0M| 2M| 3%| 0%| 0%| 0%| 0%| 0%|
│└──────────────────────────────────────────────────────────────────────────
│┌┤ #1 AMD Radeon RX 9070 ├────────────────────────────────────────────────
││ Name | PID |KFD| VRAM | GTT |CPU |GFX |COMP|DMA |VCNU|
││ firefox-bin | 644097| | 450M| 22M| 0%| 0%| 0%| 0%| 0%|
││ xfwm4 | 606312| | 279M| 12M| 0%| 0%| 0%| 0%| 0%|
││ amdgpu_top | 630730| | 0M| 2M| 3%| 0%| 0%| 0%| 0%|
│└──────────────────────────────────────────────────────────────────────────
└───────────────────────────────────────────────────────────────────────────可以看到Xfce桌面的窗口管理器xfwm4跑在外接显卡9070下面。如果xfwm4跑在核显880M下面,可以尝试注销重新登录桌面,通常就能让xfwm4跑在外接显卡里。
最后附上在Xubuntu 26.04(Linux 7.0 + Mesa 26.0 + Xorg 21.1 + Xfce 4.20 )上AMD平台365处理器880M核显轻薄本外接AMD显卡RX9070外屏跑赛博朋克2077基准测试结果:

2K分辨率,超级预设(不开光追),FSR4超分开质量档,开启FSR3.1帧生成,平均帧数能达到140多FPS,正好跑满我的27寸2K/144Hz显示器。
雷电3显卡坞的性能损耗还是比较高的,如果要充分发挥显卡的游戏性能,建议使用oculink显卡坞,oculink的平均帧和low帧表现都要明显优于雷电3,毕竟oculink带宽是雷电3的2.5倍。
比如我用oculink外接9070,2K分辨率,超级预设(不开光追),就算不开超分和帧生成,平均帧也有115FPS,同设置,雷电3外接的平均帧只有70FPS(比oculink最低帧都低),比oculink低了36%,就是这么夸张。

如果打开FSR4质量和FSR3.1帧生成,帧数就奔着240FPS去了。
