Skip to content

Chapter 17: Storage Network Packet Path · Part 9 of 10

Act 8 -- Compute vs Storage: Side by Side

You have now traced both fabrics to packet level. Here is where they differ:

Fabric Comparison
Compute Fabric vs Storage Fabric
click any row for detail
Dimension
Compute Fabric
Storage Fabric
NIC hardware
8x single-port CX7 HCA per DGX
2x dual-port CX7 NIC per DGX (Slot1 + Slot2)
Switch hardware
QM9700 (InfiniBand HDR) or SN5600 (RoCEv2)
SN4600C 100GbE or similar
Topology
Rail-optimised fat-tree, full bisection (1:1)
Simple leaf, 2:1 oversubscription acceptable
Transport protocol
RDMA (InfiniBand or RoCEv2)
NVMe-oF RDMA (preferred) or NVMe/TCP
PFC
Required -- lossless for AllReduce
NOT used in most storage fabric designs
Congestion control
DCQCN with tight thresholds (Kmin ~80KB, Kmax ~400KB)
ECN only, larger thresholds (Kmin ~200KB, Kmax ~1MB)
Traffic pattern
All-to-all, synchronised (AllReduce barrier)
Burst writes (checkpoint), sequential reads (dataset load)
Payload
NCCL messages (RDMA Write chunks, 256KB-4MB typical)
NVMe command capsules (64B SQE) + RDMA Read data (target-pull, 4MB block)
GDS capable
Not applicable
Yes (RDMA transport only, requires nvidia-fs module)
Key diagnostic
ibstat, perfquery, DCGM, UFM
nvme error-log, rdma stat, fio, gds_check
The core confusion to avoid
Both fabrics use ConnectX-7 NICs and RoCEv2 framing. This does NOT mean they share a configuration. The PFC requirement, ECN thresholds, and traffic patterns are fundamentally different. A storage fabric misconfigured as a compute fabric (with PFC enabled) will pause-storm on checkpoint bursts. A compute fabric misconfigured as a storage fabric (PFC disabled) will drop packets and destroy AllReduce performance.
DimensionCompute FabricStorage Fabric
Hardware8x single-port CX7 HCA (per DGX)2x dual-port CX7 NIC (per DGX)
SwitchQM9700 (IB) or SN5600 (RoCEv2)SN4600C or similar 100GbE
TopologyRail-optimised fat-tree, 1:1 oversubscriptionSimple leaf, 2:1 oversubscription
TransportRDMA (IB or RoCEv2)NVMe-oF RDMA or NVMe/TCP
PFCRequired (lossless for AllReduce)NOT used in most designs
Congestion controlDCQCN with tight thresholdsECN only with larger thresholds
Traffic patternAll-to-all, synchronised (AllReduce)Burst writes (checkpoint), sequential reads
Payload protocolNCCL messages / raw RDMA writesNVMe command capsules over RDMA
Key diagnosticibstat, perfquery, DCGMnvme error-log, rdma stat, fio
GDS possible?N/AYes (RDMA transport only)

The most dangerous assumption is that because both fabrics use ConnectX-7 NICs and RoCEv2, they should be configured identically. They should not. The PFC requirement, ECN thresholds, and traffic patterns are fundamentally different. A storage fabric misconfigured as a compute fabric will PFC-stall on checkpoint bursts. A compute fabric misconfigured as a storage fabric will drop packets and destroy AllReduce performance.