首先要明确两个概念:
- PCIe Bifurcation (通道分支/分叉)
允许将一个物理上的宽通道(如 x16)在逻辑上配置为多个更窄的通道(如 x8+x8, x8+x4+x4, 或 x4+x4+x4+x4)。
- Lane Sharing / Switching (通道共享/切换)
“两个槽共享 x16,插满变成双 x8”的情况。这通常被称为 PCIe Switching 或 Dynamic Lane Allocation。
典型应用场景
两个场景都针两条X8插槽,这两条X8插槽共享X16带宽,这里将其中能跑到X16带宽的插槽称为主插槽,将最高能跑到X8带宽的插槽称为副插槽。将以下命令的结果交给AI就知道每个设备的带宽了,需要注意的是针对那种自带拆分芯片M.2扩展卡,不光要看M.2硬盘获取到的带宽,还要看扩展卡本身实际工作的带宽。
lspci -vv | grep -E "^[0-9a-f]{2}:[0-9a-f]{2}.[0-9a-f]|LnkCap:|LnkSta:" | grep -v "ASPM"
场景一
需求:将无拆分芯片的X8双M.2扩展卡和X8网卡跑满。
正确方案:
| PCIE插槽 | 扩展卡 | BIOS设置 |
| 主插槽 | 无拆分X8双M.2扩展卡 | X4X4X8 |
| 副插槽 | X8网卡 | X8 |
将M.2扩展卡插在主插槽,将网卡插在副插槽。在BIOS中设置主插槽为X4X4X8,副插槽为X8,这个是经过验证可以让两个M.2和一个网卡都获得自己的理想带宽。另外如果将主插槽设置为Auto,副插槽设置为X8似乎也是可以,这一种没有充分验证。
场景二
需求:将具有拆分芯片的X16四M.2扩展卡跑到X8带宽,同时让无扩展的双M.2扩展卡跑满。这个四M.2扩展卡不需要主板支持拆分,金手指兼容X4、X8、X16插槽。
正确方案:
| PCIE插槽 | 扩展卡 | BIOS设置 |
| 主插槽 | 无拆分X8双M.2扩展卡 | X4X4X8 |
| 副插槽 | 具有拆分芯片的X16四M.2扩展卡 | X8 |
如果按照上表中的方法插,但是BIOS设置是默认(两个插槽都是“auto”),那会出现神奇的情况:具有拆分芯片的X16四M.2扩展卡实际跑在X4带宽上,无拆分X8双M.2扩展卡中的两个盘只能认第一个。




