我正在使用几个 PCIe 3.0 扩展卡(GPU 和 Infiniband 互连)。我想知道如何实际管理通道,以及是否可以通过更改端口或使用某些适配器(16x -> 8x)来优化我的设备。Intel Haswell-EP可以管理40 条 PCIe 3.0 通道。在 Intel 的原理图中,PCIe 3.0 控制器似乎分为两个 x16 和一个 x8 子桥。
在 Haswell-EP CPU 的一些商业原理图中,我们可能会读到:
多达 40 个 PCIe Gen3 通道 2x16 + 1x8 到 3x8 图形。
是否所有设备都连接到主 PCIe 桥(以及为每个设备自动协商的通道数量),或者主板是否将设备直接连接到所谓的 3 个子桥16x、16x和8x之一(然后协商通道数量对于每个子桥)?
我无法直接访问主板以查看设备是如何连接的,但我怀疑没有使用所谓的 8x 子桥的通道。另外,我想知道通过使用 16x 到 8x 适配器,我是否可以利用更多通道并增加我的总 PCIe 带宽(即使该设备的最大理论带宽也将除以 2)。
[编辑]
我为一个 CPU 插槽获得的示例lstopo
:
HostBridge L#0
PCIBridge
PCI 15b3:1011
Net L#16 "ib0"
OpenFabrics L#17 "mlx5_0"
PCIBridge
PCI 8086:1d6b
PCIBridge
PCI 102b:0532
GPU L#18 "card0"
GPU L#19 "controlD64"