The Definitive Guide toAI Data Centers
Ask the GuideAboutAccount
Guide › Commissioning & Go-Live › 13.7

Chapter 13.7

In this chapter · 8 sections
Term help
Terms in this chapter (67)

Network Fabric Commissioning & Validation

Fabric defects surface quietly, one marginal optic and one mis-cabled rail at a time. Every defect you fail to screen at layer 1 comes back in production as a straggler or a stalled all-reduce, where it costs days instead of minutes.

ThreadsGoodputDensity ramp

What you'll decide here

  1. The physical-layer bar: pre-FEC and post-FEC BER thresholds, the link-flap budget, and the soak duration each link must survive before any higher-layer test runs.
  2. How you prove each link lands on its mapped rail and tier before any collective runs: a mis-cabled rail passes BER and still wrecks bandwidth.
  3. Which layers you test with synthetic point-to-point traffic here, and which wait for cluster-scale collective benchmarks on real GPUs (Chapter 13.9).
  4. Whether time-sync accuracy is a hard acceptance gate, and which holdover and offset-under-load criteria the timing plane must meet.
  5. The baseline fingerprint and link-health register you hand to operations. Day-2 fabric reliability is only as good as the baseline you can diff against.

By the time the network team arrives, the hall has load-banked power, flushed and proven cooling, and an integrated-systems test that pulled the plug and watched the building survive (Chapter 13.6). It does not yet have a fabric anyone can trust. The cables are run, the optics seated, the switches racked and powered. Somewhere among tens of thousands of links sit marginal transceivers, a handful of rails cross-patched into the wrong leaf, a few ports negotiating the wrong FEC, and one boundary clock nobody configured. None of them announce themselves. They surface later as a 4,000-GPU job running at 70% of the bandwidth it should, a collective that intermittently times out, or an incident whose telemetry timeline is too blurry to read.

Fabric commissioning drags those defects into the light before the cluster is declared ready. Each acceptance gate (the BER threshold, the topology-verification method, the synthetic-versus-real-workload seam, the time-sync gate) carries a specific downstream cost when it is set wrong. Defects are cheapest to find at the lowest layer that can reveal them. A marginal optic found at layer 1 is a five-minute swap by a technician already on the floor. The same optic found after training starts costs days of wall-clock time, a forensic hunt across thousands of streams, and a straggler that throttles a synchronous job to the speed of its weakest link. Commission the fabric bottom-up (physical, then topology, then point-to-point, then timing) and a population of latent defects becomes a finite punch list. Skip it, and you ship that punch list to operations with the GPUs already spinning.

The bottom-up sequence: why layer order is not negotiable

Fabric commissioning runs strictly bottom-up, because debugging cost sets the order. A layer can be trusted only once the layer beneath it is clean, since a lower-layer defect masquerades as a defect at every layer above. A marginal optic (layer 1) shows up as packet loss (layer 2/3), then as collapsed RDMA bandwidth (transport), then as a slow all-reduce (collective), then as a straggler (the job). Start the diagnosis at the top and you spend days chasing a software ghost that is really a $200 transceiver. So validate the bottom first, and refuse to run any higher-layer test over a link that has not passed the one below it.

The sequence has six steps: (1) physical-layer acceptance, starting from the installer's certified passive plant, with every link clean, every optic in spec and every port stable under soak; (2) topology validation, with every link landing exactly where the cabling map says, on the right rail and tier; (3) point-to-point bandwidth and latency, where synthetic RDMA traffic confirms each path delivers its design bandwidth and latency; (4) congestion and QoS verification, with PFC/ECN/QoS behaving as configured under deliberate stress; (5) scale-up (NVLink) validation, proving the intra-node and intra-rack domain distinct from the scale-out fabric; and (6) the timing plane, with PTP accuracy gated as an acceptance criterion. Cluster-scale collective benchmarking sits one layer above this chapter and needs real GPUs: NCCL all-reduce sweeps, OSU/MLPerf, and the bisection-bandwidth acceptance number that becomes a contractual SLA. It lives in Chapter 13.9. The seam is deliberate. This chapter proves the fabric is sound with synthetic traffic; the next proves the cluster is fast with real workloads.

The first gate is the physical layer, where the largest population of defects lives. Modern AI fabrics run PAM4 SerDes at 100–200 Gb/s per lane (800G and 1.6T links). That signal regime is so tight that every link needs forward error correction to work at all. The raw, uncorrected channel, the pre-FEC BER, is error-prone. FEC (RS-544 KP4 on Ethernet, the equivalent on InfiniBand) corrects it to a post-FEC BER that is meant to be effectively error-free. Read both numbers, because they answer different questions. Post-FEC BER says whether the link is currently delivering clean frames. Pre-FEC BER says how much margin FEC is burning to do it, and a link that runs clean today on the last few dB of FEC headroom will start dropping frames the first warm afternoon. At 200G per lane, some optics in the IEEE P802.3dj draft add an inner FEC inside the module on top of the RS(544,514) outer code. The switch's FEC counters then no longer see the optical margin, so read the module's media-side pre-FEC BER through CMIS VDM as well, and record link-layer retry counters where the link uses retry, because retry masks errors just as FEC does (Chapter 8.9).

Before any optic lights, take the installer's passive-plant certification for every fiber: continuity, insertion loss and reflectance measured with the contract's reference method and uncertainty, an end-face inspection record for every connector, and polarity checked against the keyed map. Chapter 8.9 sets the loss budget and Chapter 8.10 the polarity scheme and end-face drawings. Inspect and clean every end face before it mates, because a contaminated ferrule can erase more margin than the whole fiber run. Make certification the entry rule: a link that fails BER on an uncertified channel goes back to inspection and cleaning first. Without that rule, the BER screen turns into a cleaning campaign run one link at a time instead of a hunt for marginal optics.

A standard's interface BER objective, or a threshold from someone else's sweep, is not an installed-link threshold. Your acceptance plan has to name the Ethernet or InfiniBand generation, lane rate, FEC, measurement interface (for example MAC/PLS versus device/link counters), instrument and counter semantics, traffic pattern, dwell, temperature, sample size and statistical confidence. Express BER as a maximum (ceiling), then read pre-FEC margin and uncorrectable or frame-loss behavior against the named OEM and standard profile. Flag any link whose pre-FEC BER sits above its optic's spec, even if FEC is still masking it, for an optic swap, reseat or cable replacement before any higher-layer test runs over it. This is the highest-yield step in fabric commissioning. The proposed 512-GPU map in Chapter 8.5 has 1,024 back-end optical channels and 2,048 module ends to screen for marginal optics after factory integration, and finding them here costs hours of a technician's time. Finding them after the proxy training run starts costs days of wall-clock time and a straggler hunt across the whole job.

The second physical-layer screen is link-flap. A link that trains up, drops and re-trains, even once an hour, will eventually drop mid-collective, and on a synchronous fabric one transient flap can stall the entire job. Zero every port's flap counter at baseline, then run a sustained soak under line-rate synthetic load at realistic inlet temperature. Take the dwell from the project and OEM test plan (Keysight presents a 24–72-hour long-term interconnect example). Watch for any port that logs a single flap, a single FEC-uncorrectable event, or a creep in pre-FEC BER. Soak is where thermal-marginal optics reveal themselves: a transceiver that passes a cold-start BER check at 22 °C can fail once the hall warms to its operating point. A soak run cold has not tested the link you will operate.

Topology validation: the mis-cabled rail that passes every BER test

A link can be physically perfect, with zero flaps and BER far inside spec, and still be wrong because it lands on the wrong port. In a rail-optimized design, corresponding GPU/NIC positions belong to the same rail, and a rail can span several leaves and spines. GPU 0 belongs to rail 0 and GPU 1 to rail 1, for example, and their matching positions on other nodes can land on additional leaves in those rails. A plane is a separate fabric attachment, not another name for a rail. Reconcile the actual endpoint-to-port assignments against the list in Chapter 8.5; same-rail traffic stays on one leaf only when both endpoints attach there. Suppose a rail-3 endpoint is cross-patched into a leaf assigned to rail 5. Nothing at the physical layer need complain: the link trains, BER is clean and the soak passes. But that endpoint can lose its intended rail path and stall every collective that needs its rank. Re-patch against the rail/port map, then prove the endpoint either forwards correctly or fails and restarts within its budget, because the wrong leaf does not guarantee an alternate route through a spine. BER screening cannot catch this defect class, and it is common at scale: with tens of thousands of cables run by hand, even a fraction of a percent miswired is dozens to hundreds of wrong links (0.5% of 40,000 is 200).

Topology validation is therefore a distinct, mandatory gate: an automated reconciliation of the discovered topology against the designed cabling map. The fabric manager (UFM and ibdiagnet for InfiniBand, the equivalent SDN/telemetry controller for Ethernet, NMX for the NVLink domain) enumerates every link's two endpoints by switch GUID and port. A script diffs that discovered graph against the reference architecture's expected adjacency: every leaf-to-spine link, every node-to-leaf link, every rail assignment. NVIDIA's UFM Cable Validation Tool is one implementation. It compares discovered neighbors against a topology file and reports wrong-neighbor, wrong-port and extra-cable links. Mismatches print as a punch list of specific ports to re-patch. Run this before point-to-point bandwidth testing, because a mis-cabled topology produces bandwidth numbers that look like a congestion or tuning problem, and you will burn days chasing the wrong layer. Verify the graph is the graph you designed, then test how fast it is.

Point-to-point bandwidth and latency: synthetic traffic before real workloads

With the physical layer clean and the topology proven, you measure whether each path delivers its design bandwidth and latency, using synthetic RDMA traffic rather than real collectives. On InfiniBand the canonical tools are the perftest suite: ib_send_bw and ib_write_bw for per-pair bandwidth, and ib_send_lat/ib_write_lat for latency. Perftest times latency as a round trip and reports half of it, so the figure is an estimated one-way latency, not an independently measured direction. On RoCEv2 the same perftest binaries run over the Ethernet fabric, alongside rping and vendor equivalents. Set per-path payload and completion-tail bounds from the qualified host, memory, message size, queue depth, transport and port map in Chapter 8.4/Chapter 8.5. Record the tool version, command line, CPU/NUMA placement, MTU and warm-up with each result. A switch-hop latency or another deployment's line-utilization percentage does not set this pair's acceptance threshold. If a result is low after BER and topology pass, look at endpoint placement, PCIe, memory, transport and queue behavior, and isolate those causes before changing congestion settings.

Point-to-point comes before collective benchmarking for debugging isolation. A pair-wise ib_write_bw test exercises one host-to-host path, so a low number narrows the search to that path and its two endpoints (the NICs and their PCIe lanes, memory placement and NUMA binding, and the hops in between) rather than the fabric at large. An all-reduce sweep exercises thousands of links at once, so a low number says the aggregate is slow without saying which link dragged it down. Establish per-pair correctness first, then layer collective behavior on top. The collective sweep waits for Chapter 13.9 because a true NCCL all-reduce acceptance run needs real GPUs driving the NICs, which overlaps node burn-in (Chapter 13.8) rather than pure fabric commissioning.

Fabric commissioning gates: what each layer proves, the tool, the pass criterion, and the cost of skipping it
GateWhat it provesMethod / toolPass criterionCost of skipping
Physical-layer (BER + flap)Every link is clean and has FEC margin to spareInstaller's passive-plant certification (loss, reflectance, end-face, polarity); switch/NIC counters; pre-FEC and post-FEC BER read at line rate; module CMIS VDM media-side pre-FEC BER; retry counters where usedEvery channel certified before it lights; BER or frame-loss ceiling for your link generation, FEC and measurement interface, at the planned dwell and confidence; pre-FEC within the optic's margin; zero flaps over the approved soakMarginal optic becomes a production straggler; days of forensic hunt
Topology validationEvery link lands on the designed rail/tierFabric-manager discovery (UFM/ibdiagnet, cable-validation tool, or Ethernet SDN/LLDP) diffed vs cabling mapDiscovered adjacency graph matches reference architecture exactlyCross-patched rail collapses bandwidth; mimics a tuning problem
Point-to-point BW/latencyEach path delivers design bandwidth and latencyib_send_bw / ib_write_bw / ib_*_lat (IB); perftest / rping (RoCE)Payload and completion-tail bounds qualified for the pair, operation and message distribution under testA slow path hides in the collective average; localization lost
Congestion / QoSPFC/ECN/QoS behave as configured under stressEngineered incast/many-to-one; watch PFC pause, ECN marks, dropsOrdinary congestion: ECN engages, no persistent pause cycle, no victim-flow loss in the declared lossless class, fairness holds. Deliberate watchdog mitigation: documented drops accounted for; correct completion or bounded failure/restart.PFC storm or HOL blocking stalls the whole job under real load
Scale-up (NVLink)Intra-rack domain is whole and distinct from scale-outNVLink topology query; nvloom and mnnvbandwidth; IMEX health; failover and tray-replacement drills on platforms that document themAll NVLink/NVSwitch links present at full BW; domain size correctA degraded NVLink lane silently caps TP/EP bandwidth in-node
Time-sync (PTP)Every clock is within offset bound, under load and in holdoverOffset-from-master sweep; load test; simulated GNSS-loss holdoverAll nodes within the agreed offset bound; the bound holds under load; holdover and failover meet specUncorrelatable telemetry; broken multi-DC ordering; blind RoCE diagnosis
These synthetic-traffic gates belong to fabric commissioning (this chapter). Collective-level acceptance (NCCL all-reduce busbw, MLPerf/OSU, contractual bisection bandwidth) needs real GPUs and lives in Chapter 13.9. Tool names are representative, not exhaustive; vendor-neutral equivalents exist for each.

Congestion and QoS verification: testing the failure case, not the happy path

A fabric that benchmarks beautifully on idle point-to-point tests can still collapse when real collective traffic creates contention. The mechanisms that handle contention (priority flow control, ECN/DCQCN, adaptive routing, QoS classes) are exactly what idle tests never exercise. Congestion verification deliberately creates the failure case: an engineered incast (many senders to one receiver), a synchronized many-to-one pattern that mimics an all-reduce's reduction phase, and sustained saturation across shared spine links. Under that load, watch the congestion telemetry (PFC pause frames, ECN marks and CNP responses, switch egress drops, queue occupancy) and confirm the fabric does what its configuration claims.

This gate exists to catch the pathologies of lossless Ethernet (Chapter 8.6): a PFC deadlock or pause storm that propagates backward and freezes a whole region of the fabric; head-of-line blocking, where one congested flow stalls unrelated flows sharing a queue; victim flows dropped because a misconfigured ECN threshold never engaged; and QoS classes that do not actually isolate, such as storage traffic starving compute traffic or the reverse. On a RoCE fabric, trace ECN marking, reverse CNP delivery and sender response using the DCQCN recipe in Chapter 8.6. Test a watchdog event separately. It can drop traffic to break a pause condition, so acceptance requires the documented recovery action and correct bounded completions, not an unconditional zero-drop guarantee. Verify that the chosen path distribution respects the ordering rules in Chapter 8.4. The rule is the same as for the timing plane: an operational mechanism tested only in the happy path has not been tested.

Installed-fabric acceptance record. Before the first fault, the test lead freezes the serials, port/cable map, software and configuration hashes, and the traffic manifest: workload, seed, rank placement, message sizes, concurrency and commands. Each fault also gets its own completion, error and restart deadlines; the ≤1 s forwarding budget is not an endpoint deadline. The network owner records injection and clear timestamps, affected paths, FIB and queues. The endpoint owner records status, retries, timeouts and completion tails. Join the two under the timestamp-error requirements in Chapter 8.7, and retain raw counter deltas, resets and wraps, sampling intervals, missing samples and artifact hashes. A record too coarse to tell one cause from another does not pass.

Pass the physical, topology and matched healthy perftest runs first. Then inject one fault at a time and replay identical traffic after convergence and after restoration. Exercise every send, read, write and atomic operation the workload needs, and check destination data and completion status.

Simulated result. In rail 3, drive 32 ib_write_bw pairs that cross the SU cut, then take down spine Y, one of the two spines serving that rail in Chapter 8.5's port map. Forwarding recovers in 0.6 s against the 1 s bound. Converged cross-cut payload is 705 GB/s per direction, against the 720 GB/s Chapter 8.5 predicts and the 600 GB/s floor. Every destination checksum matches, and pause clears without a watchdog event. Through 8.5's step formula, 705 GB/s predicts a degraded step of about 1,030 ms, inside 1,100 ms, so the simulated profile passes. The installed system is not accepted until real traces exist, and after node qualification in Chapter 13.8 real GPUs must still meet the step limits in Chapter 13.9.

Flip. A converged payload of 585 GB/s, what thirteen healthy links deliver, predicts about 1,110 ms and fails, even with a 0.6 s recovery and clean counters on every live link. Find the missing capacity link by link before touching DCQCN settings, because congestion tuning cannot restore links the fabric has lost.

Installed-fabric fault and test record
State / injectionRecords to keepAcceptance / restorationFails when
Hardware and executable test inputsSupported SN5400 64×400G leaf and spine profile, effective class/queue settings, workload/seed, rank placement, operation sizes/concurrency and command manifestFreeze fault-specific completion/error/restart deadlines before injection; retain the supplied forwarding and real-step limitsAny input changes after the baseline without a rerun
Healthy baselinePer-link mode/FEC/soak; discovered adjacency; matched perftest commands, data checks and completion distributions; effective bidirectional class mapAll physical and operation bounds pass; archive rollback configuration before faultsAny link outside its physical bound, a perftest pair below its payload bound, or a data mismatch
Local cable loss; then one spine withdrawalInject at a named 8.5 link/spine; correlate carrier/FIB change, surviving ports, retries and completion tailsMeet 8.6 forwarding-recovery bound; separate interrupted work from converged behavior; restore adjacency and repeat baselineRecovery over 1 s, or converged cross-cut payload below about 600 GB/s per direction per rail
Remote failed downlinkDisable the remote endpoint downlink while the local uplink remains up; retain remote withdrawal and local FIB/probe recordsNo stale reachable-rank claim; prove alternate attachment or bounded failure/restart if the rank is disconnected; restore and retestA sender still treats the disconnected rank as reachable, or the job hangs instead of failing within its budget
Carrier-up data-path blackholeDrop the tested data traffic on an identified remote path while carrier/control remain up; retain path-equivalent probes, BFD scope, retries and errorsDetect or report failure within the declared operation budget; a live control session earns no data-path pass; remove the drop and retestThe failure goes unreported past the operation budget while carrier and control stay up
Receiver resource/drain stallWithhold receives for a send test, or separately throttle the receiving consumer; retain receive-resource, destination-queue and sender-rate recordsIdentify receiver starvation separately from interior congestion; bound failure/recovery; restore resources and verify correct completionReceiver starvation is read as fabric congestion, or recovery leaves incorrect completions
Congested reverse feedback queueDelay CNP in the named reverse class; join egress ECN, reverse-queue/CNP counters, sender rates, PFC duration and watchdog actionApply 8.6 feedback and pause-recovery criteria; restore feedback priority and verify baseline; record any drop and its transport consequenceA persistent pause cycle, or a drop whose transport consequence is not recorded
Bad restored pathRe-enable a path with an intentional data-path defect; retain probe, ECMP membership, per-path errors and completion tailsKeep the bad member quarantined or remove it within the recovery bound; repair it, requalify physical/data paths, then re-admitThe defective member is still in ECMP when the recovery bound expires, or is re-admitted before its physical and data-path retest passes
Sources: perftest documentation (tool and measurement scope) and RFC 5880, June 2010 (BFD path scope). Cumulus Linux 5.14 QoS documents a discard action for that software profile; confirm the watchdog behavior of the switch OS you run. Thresholds and observations come from your project profile, not from these tool names.

Release to Chapter 13.9 after hardware and test inputs are frozen, every fabric row has an attributable passing run and restoration reproduces baseline. Missing records, incorrect data, a missed recovery bound or a persistent pause blocks the release. Final workload acceptance still needs the healthy and degraded step limits on real GPUs. Releasing early hands an unresolved fault to the most expensive part of bring-up.

Everything above concerns the scale-out fabric, the InfiniBand/Ethernet network of NICs, leaves and spines that carries inter-node collectives. The scale-up fabric is a different animal (Chapter 8.2): the NVLink/NVSwitch (or UALink, or vendor-equivalent) mesh that binds the GPUs within a node or rack into a single coherent accelerator, at roughly an order of magnitude more per-GPU bandwidth than the scale-out NIC. It gets its own gate because it fails its own way. A degraded NVLink lane does not drop packets you can count on a switch. It silently holds intra-domain bandwidth below spec, capping tensor- and expert-parallel throughput inside the node without tripping any scale-out alarm.

Validation starts by querying the NVLink/NVSwitch topology to confirm the domain is whole: an NVL72 should present all 72 GPUs in one NVLink domain with every expected link present, not 71 with one GPU silently demoted to PCIe. Then measure per-link NVLink bandwidth and confirm each lane runs at full rate against the installed platform's datasheet. GB200 and GB300 NVL72 (NVLink 5) are rated at 1.8 TB/s per GPU and ~130 TB/s per rack. Vera Rubin NVL72 (NVLink 6, shipping spec) is rated at 3.0 TB/s per GPU and 216 TB/s per rack. Checking a Vera Rubin domain against the Blackwell figures would pass a link running well below spec. The gate also confirms the boundary between the two fabrics is clean: scale-up traffic stays on NVLink and does not spill onto the scale-out fabric, and the IMEX/MNNVL partitioning is configured so the domain is schedulable as designed.

NVIDIA's DCGM 4.7 gives the gate its tools: nvloom validates the multi-node NVLink fabric, mnnvbandwidth checks cross-node reachability and bandwidth, and an IMEX health check watches the domain. Log the DCGM and driver versions next to every result. Then break things on Vera Rubin NVL72, where NVIDIA's September 2026 NVLink 6 resiliency article documents the recovery behavior: the NMX controller migrates to another tray within seconds, forwarding continues through a switch-CPU reset, link errors are contained and rebalanced, and a replaced tray's links stay out of service until someone verifies them. Take down the tray that hosts the NMX controller and time the takeover. Reset a switch CPU while traffic runs, inject link errors, and swap a switch tray. NVIDIA describes the behavior; the timings you measure are yours to record. On earlier generations, drill only what the vendor documents for that generation.

NVLink links that run between racks over optics get the same optic screening as the scale-out fabric. NVIDIA's March 2026 design account sketches one such domain, the eight-rack Rubin Ultra NVL576, as a forecast design; its timing is contested (Chapter 8.2). Apply BER, FEC margin, retry and flap acceptance to those rack-to-rack links. Inside today's NVL72 racks, the scale-up domain is still all copper.

PTP/IEEE-1588 time-sync as an acceptance gate

Chapter 8.7 made the case for a real PTP timing plane and insisted that time-sync accuracy be a commissioning acceptance gate, not a configure-and-hope step. This is where that gate is executed. A timing plane that is designed but never measured is trusted on faith, and faith fails at the worst moment: the night a 4,000-GPU run stalls and the forensic reconstruction across thousands of telemetry streams turns out to be a smear because every clock was drifting by milliseconds. The gate turns "we configured PTP" into "the clock is provably trustworthy."

The gate has three measured criteria. First, offset-from-master across the fleet: a sweep confirming every node's PHC sits within an agreed offset bound of the grandmaster. Sub-microsecond is the target, and tens of nanoseconds is achievable on modern Spectrum/ConnectX-class silicon. Second, accuracy under load: the bound must hold with the data plane saturated, because PTP accuracy that degrades under traffic is the accuracy you lose during the incident you are trying to diagnose. Third, holdover and failover: inject a GNSS-loss event to confirm the grandmaster coasts on its oscillator within the drift budget for the required holdover window, and force a primary-GM failure to confirm BMCA elects the standby within spec. Run the gate for real. Pull the GNSS feed and measure the drift instead of trusting the oscillator datasheet, the same design-for-the-failure-case discipline as the black-building test in Chapter 13.6. Pass these three and the timeline every later incident is reconstructed against is real.

Chapter 8.7 hands this chapter a second gate alongside timing: out-of-band reachability with the production data plane severed. Sever it deliberately, then prove from the management network that every endpoint in the inventory still answers: BMCs, rack PDUs, switch consoles, CDU and cooling controllers. Prove also that a representative control action lands on each class: power-cycle a node, read and switch a PDU outlet, open a serial console, command a CDU setpoint. Trace the management path's own dependencies while you are there (DHCP, DNS, the jump host, the credential store, the console server's power feed) and confirm none of them ride the fabric that just failed. Record the endpoint inventory, the actions demonstrated and the recovery time. An OOB plane exercised only while the data plane was healthy is untested, and the night it is needed is the night the data plane is gone.

100-200 Gb/s
PAM4 SerDes per-lane rate driving 800G/1.6T links — FEC-mandatory, BER-screening-critical
Scope & caveats

IEEE P802.3dj, which specifies 200 Gb/s per lane, is a draft and is not yet approved.

24-72 h example; test-plan specificguidance
Link-flap soak window in Keysight's 800GE/1.6TE interconnect note, an example only; your project and OEM test plan sets the dwell
Scope & caveats

Example test duration, not a standards-body minimum.

~10 ns
PTP accuracy across one Spectrum-3 boundary clock in NVIDIA’s one-hour, 50 Gb/s lab test
Scope & caveats

End-to-end PTP accuracy across the switch. The sub-4 ns figure is a different quantity, the synchronization error between hardware units inside the Spectrum ASIC, and has its own register entry. Do not read it off this tile.

sub-µsguidance
Fleet PTP offset-from-master target the time-sync gate must demonstrate, under load and across every node
Scope & caveats

Meta's February 2024 SPTP report gives fleet offset-from-master distributions for more than 100,000 clients, with the sub-microsecond values presented graphically. Treat it as the target the acceptance sweep must demonstrate on your own fleet, under load and across every node, not as a standards threshold.

~130 TB/s
GB200 NVL72 advertised bidirectional NVLink aggregate; verify topology and measured workload bandwidth separately
Scope & caveats

Named NVIDIA generation/platform, bidirectional aggregate convention; not delivered collective bandwidth, cache coherence or arbitrary mixed-platform performance.

Deep dive: why the synthetic-vs-real-workload seam falls between 13.7 and 13.9

Why does fabric commissioning stop at point-to-point and congestion tests and hand collective benchmarking to Chapter 13.9? That means the NCCL all-reduce sweep, the OSU/MLPerf runs and the bisection-bandwidth number that becomes a contractual SLA. A hard dependency sets the seam: a meaningful collective benchmark needs real GPUs driving the NICs. A true all-reduce's bus bandwidth (busbw) depends on the GPUs computing the reduction, the NVLink domain feeding the NICs and the full software stack (CUDA, the collective library, topology-aware algorithm selection). None of that exists until node bring-up (Chapter 13.8) is done. You can drive synthetic RDMA traffic from the NICs alone, with no GPU compute, and that is exactly what perftest does. So point-to-point and congestion validation belong here, before the GPUs are even integrated.

Getting the seam wrong wastes schedule in both directions. Run collective benchmarks during fabric commissioning and you block on GPU availability the fabric team does not control, stalling the network punch list. Defer all fabric validation until the GPUs arrive and you discover marginal optics and mis-cabled rails during the proxy training run, when every defect is entangled with GPU, HBM and software variables and the localization that was trivial at layer 1 becomes a multi-dimensional hunt. The right sequence: fabric clean and proven with synthetic traffic (this chapter), then GPUs burned in (13.8), then cluster-scale collectives and the reference training run validating goodput against the SLA (13.9). Each stage hands the next a layer it no longer has to suspect.

Deep dive: the as-commissioned fabric baseline — and why operations cannot live without it

The last act of fabric commissioning is not a test but a capture: the as-commissioned baseline 'fingerprint' that day-2 operations will diff every future reading against (Chapter 13.2; operations consume it in Chapter 14.2). Fabric health is a change-detection problem. A pre-FEC BER of 5e-9 on a link means nothing in isolation, but if that link was commissioned at 5e-11, the two-order-of-magnitude creep is an optic degrading toward failure, and you can see it only if you saved the commissioned value. Without a baseline, every operational reading is a number with no referent, and the fleet flies blind until a link fails outright instead of being swapped in a maintenance window.

The baseline that ships to operations is concrete: per-link pre-FEC and post-FEC BER and FEC-correction rates at acceptance; per-port flap-counter zeros and the soak result; the validated topology graph (the discovered adjacency that passed, kept as the golden reference for future drift detection); per-pair bandwidth and latency distributions; the congestion-test telemetry signatures; the NVLink domain inventory and per-link bandwidths; and the PTP offset-from-master distribution with the measured holdover curve. Alongside the numbers goes the link-health handoff: the punch list of links swapped or re-patched during commissioning (the population most likely to recur), the marginal-but-passing links flagged for early replacement, and the optic serial and lot data that lets operations trace a future failure cluster back to a bad batch. This artifact seeds the day-2 reliability program. It turns commissioning from a one-time gate into the first data point of a continuous fabric-health time series.

Anti-patterns

The same fabric-commissioning failures recur, because each one comes from skipping a layer or testing only the happy path:

  • Accepting on post-FEC BER alone. Every link that delivers clean frames today passes, and the pre-FEC margin FEC is burning goes unread. The marginal optics pass commissioning and become production stragglers the first warm afternoon. Screen on margin, not on the masked symptom.
  • Skipping topology validation because BER passed. A cross-patched rail trains clean and benchmarks low, mimicking a congestion or tuning problem. Days are lost at the wrong layer because nobody diffed the discovered graph against the cabling map first.
  • Commissioning the fabric cold. BER and flap checks run at ambient and accepted, then thermal-marginal optics fail once the hall reaches its operating temperature. Soak at realistic inlet temperature, or you have not tested the link you will operate.
  • PTP configured but never gated. Time-sync treated as a setup step instead of a measured acceptance criterion: no offset sweep across every node, no under-load test, no holdover pull. The first uncorrelatable incident shows the timeline was never trustworthy. → Chapter 8.7.
  • No baseline captured. The fabric is declared ready without saving the as-commissioned fingerprint, which leaves operations with nothing to diff against and no way to catch a degrading link before it fails outright. → Chapter 14.2.

Accept the installed fabric on correlated physical, forwarding and transport test results, then hand the qualified paths and their failure limits to Chapter 13.9. Keep failed or unobserved paths out of service until they are repaired and retested. Accepting on a bandwidth average instead buys an earlier handover, paid for with a longer, harder fault investigation during the workload run.

Fabric commissioning consumes the Part 8 design decisions: rail-optimized topology and oversubscription in Chapter 8.5, the transport and protocol semantics being validated in Chapter 8.4, the congestion-control mechanisms stress-tested here in Chapter 8.6, the scale-up NVLink domain in Chapter 8.2, the physical-layer optics and FEC in Chapter 8.9, and the PTP timing plane whose acceptance gate this chapter executes in Chapter 8.7. Within Part 13, this gate sits between integrated-systems testing in Chapter 13.6 and node burn-in in Chapter 13.8, and hands cluster-scale collective benchmarking, the reference training run and the contractual goodput SLA to Chapter 13.9. The acceptance-script and baseline-capture discipline is set in Chapter 13.2; the link-health register seeds the day-2 observability program in Chapter 14.2.
Cite this chapter
Fehn, J. (2026). Network Fabric Commissioning & Validation (Chapter 13.7). The Definitive Guide to AI Data Centers. https://aidatacenterguide.com/part-13-commissioning-and-go-live/13-7-network-fabric-commissioning-and-validation (accessed 2026-10-25).
@misc{aidc-13-7,
  author       = {Fehn, Jacob},
  title        = {Network Fabric Commissioning & Validation (Chapter 13.7)},
  howpublished = {The Definitive Guide to AI Data Centers},
  year         = {2026},
  url          = {https://aidatacenterguide.com/part-13-commissioning-and-go-live/13-7-network-fabric-commissioning-and-validation},
  note         = {Accessed 2026-10-25}
}
Spotted an error? Suggest an edit