複数の PCIe 3.0 拡張カード (GPU および Infiniband 相互接続) を使用しています。レーンが実際にどのように管理されているか、ポートを変更するか、いくつかのアダプター (16x -> 8x) を使用してデバイスを最適化できるかどうか疑問に思っています。Intel Haswell-EPは、 40 レーンの PCIe 3.0を管理できます。Intel の回路図では、PCIe 3.0 コントローラーは 2 つの x16 サブブリッジと 1 つの x8 サブブリッジに分割されているようです。
Haswell-EP CPU の一部の商用回路図では、次のように読むことができます。
最大 40 の PCIe Gen3 レーン 2x16 + 1x8 から最大 3x8 グラフィックス。
すべてのデバイスがメインの PCIe ブリッジに接続されているか (およびレーンの数がデバイスごとに自動的にネゴシエートされているか)、またはマザーボードがデバイスを 3 つのサブブリッジ16x、16xおよび8xのいずれかに直接接続しているか(レーンの数はその後ネゴシエートされます)これらのサブブリッジごとに)?
デバイスがどのように接続されているかを確認するためにマザーボードに直接アクセスすることはできませんが、おそらく 8x サブブリッジのレーンが使用されていないと思われます。また、16x から 8x へのアダプターを使用することで、より多くのレーンを活用し、PCIe 帯域幅の合計を増やすことができるかどうかも知りたいです (そのデバイスの理論上の最大帯域幅が 2 で割られるのは厳しいです)。
[編集]
1 つの 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"