Source-linked AI summary
Ofan: Optimal Load Balancing for AI Training
Sarah McClure, Evyatar Cohen, Jakob Krebs, Alexander Shpiner, Mark Silberstein, Scott Shenker, Sylvia Ratnasamy, Isaac Keslassy
TL;DR
AI collectives push sources to line rate to minimize worst-case completion time, but destination-oblivious spraying can leave queues overloaded and capacity underused. Ofan uses switch-based destination rotation, with a pipe-compatible variant. In Llama-3 405B FSDP2, it reduces CCT inflation substantially compared with existing algorithms.
Problem
AI-training collectives target worst-case completion time while sending at full line rate, but existing spraying can leave queues overloaded and network capacity underused.
Source: §1 · p. 1Method
Ofan deterministically rotates packets across paths per destination in switches, while pOfan stores a local destination pointer at each pipe.
Source: §1 · p. 2Results
In Llama-3 405B FSDP2, Ofan cuts CCT increase beyond a lower bound by at least 16× with NSCC and 39× with MSwift versus AR and REPS.
Source: §1 · p. 2Takeaways & Limitations
Destination-based rotation achieves O(1) queue bounds even at 100% load, unlike the message-size-growing queues shown for randomized spraying.
Source: §1 · p. 2The optimality analysis fixes source rates and removes rate reductions, so its queue bound characterizes the load balancer rather than a particular congestion controller's response.
Source: §2.2 · p. 3
Abstract
from arXiv · showhide
The extreme collective completion time (CCT) demands of AI workloads challenge existing packet spraying algorithms, which can have trouble efficiently load-balancing workloads that are sent at full line rates. We trace this to a structural cause: on a fat tree, once a packet picks its upward path, the downward path to its destination is unique, so destination-oblivious schemes cannot undo the imbalance it creates. We prove that such schemes can suffer from $\Theta(\sqrt{m})$ queueing for messages of size $m$, thus eventually triggering rate reductions by the congestion control. Instead, we suggest Ofan, a switch-based destination-aware LB scheme that can reach $O(1)$ queueing. We also present its pOfan variant that fits the pipe-based architecture of current switches. Our P4 implementation shows that it consumes modest resources. An end-to-end FSDP2 evaluation with Llama-3 405B-parameter models shows that Ofan cuts CCT inflation by $16$--$39\times$ when compared to existing algorithms.
1 Introduction
The introduction argues that destination-oblivious spraying can leave queues overloaded and capacity underused at full line rate because upward path choices cannot be corrected on a fat tree. It presents destination-based rotation, switch-based Ofan, and a pipe-compatible variant, with theoretical and FSDP2 results.
1 Introduction
- About 99% utilization, much smaller queues, and better CCT: Ofan's plots contrast with REPS and AR, whose utilization saturates below 95% at load 1.The comparison uses 1 MB messages in a three-level fat tree with random permutation traffic and no congestion control.Source: §1 · pp. 1–2, Figure 1 · p. 1
- On a fat tree, the downward path to each destination is unique, so destination-oblivious upward choices can create traffic imbalance that downstream switches cannot repair.The resulting overloaded queues and underused capacity are presented as the source of degraded CCT.Source: §1 · pp. 1–2
- Switches are Ofan's preferred home for destination-based rotation because they know topology and can consolidate traffic for each destination onto a shared rotation pointer.Hosts see only their own flows and would need topology information that switches already maintain.Source: §1 · p. 2
- pOfan adapts Ofan to pipe-based switches by keeping a local pointer for each destination at each pipe; the P4 implementation uses limited resources.Pipes provide atomic local-register read-modify-write accesses at line rate.Source: §1 · p. 2
- Randomized spraying has an Ω(√m) queueing lower bound, JSQ can grow queues by Θ(m), and destination-based rotation achieves O(1) queue bounds even at 100% load.The lower-bound analysis assumes random permutation workloads and sources sending at full line rate.Source: §1 · p. 2
- In Llama-3 405B FSDP2, Ofan cuts CCT increase beyond a lower bound by at least 16× with NSCC and 39× with MSwift versus AR and REPS; four-port pOfan gives 15× and 36×.The evaluation uses two congestion-control algorithms designed for spraying.Source: §1 · p. 2
2 Background and Methodology
The background characterizes AI-training traffic and the workload patterns used in the paper. The methodology isolates load balancing from congestion control and loss recovery so that resulting queues and unused capacity can be attributed to the load balancer.
2.1 AI Training Workloads
- AI-training collectives are typically symmetric and uniform, and their roughly synchronized starts can make sources step through packets in lockstep, potentially synchronizing port choices.Traffic is long-lived and gapless, making methods that rebalance during idle periods less helpful.Source: §2.1 · pp. 2–3
- The paper studies random permutations, all-to-all, and MoE all-to-all-v traffic, focusing most on permutations because load balancing can have the greatest impact there.All-to-all is described as easier to balance, while all-to-all-v has large incast that reduces the impact of load balancing.Source: §2.1 · p. 3
2.2 Isolating the Load-Balancing Layer
- The analysis removes congestion control and loss recovery to measure load balancing alone, then adds congestion-control algorithms back in evaluations, where the ranking among load balancers remains unchanged.The paper also assumes large buffers and generally excludes failed links unless stated otherwise.Source: §2.2 · p. 3
- With congestion control canceled, hosts send at the maximum supported rate ρmax; resulting queues and unused capacity are attributed to the load balancer.In a fault-free fabric, hosts send at full line rate; under failures, ρmax is the highest rate achievable with perfectly balanced valid shortest paths.Source: §2.2 · p. 3
- The fixed-rate idealization makes the optimality criterion possible and demanding because growing queues receive no rate reduction to rescue the scheme.A bound under fixed-rate sources characterizes the load balancer rather than a particular congestion controller's reaction.Source: §2.2 · p. 3
3 Per-Destination LB
This section argues that fat-tree load balancing must account for destinations: uplink choices can leave fixed downlinks imbalanced, while destination-based rotation can achieve bounded average queues.
3.1 LB Algorithms
- The section compares packet-based spraying schemes and introduces SIMPLE RR, JSQ, and RSQ as basic models of round-robin, shortest-queue, and random-port selection.The considered schemes vary in whether they are host- or switch-based; destination-oblivious schemes treat all northbound packets alike.Source: §3.1 · p. 3
3.2 The Downlink Problem
- Destination-oblivious schemes can balance uplinks yet leave traffic for the same destination unevenly distributed, creating collisions on fixed downlinks.In the illustrated case, even uplink loads still lead to downstream conflicts; destination-aware spreading avoids them.Source: §3.2 · p. 4, Figure 2 · p. 4
3.3 Queue-Size Lower Bounds
- RSQ and RPS have Θ(√m) uplink and downlink queues, while SIMPLE RR and JSQ have Θ(1) uplink but Θ(m) downlink queues.The RSQ/RPS downlink result neglects upstream queueing delays.Source: §3.3 · p. 5
- Identical message sizes and pacing synchronize senders, making successive packets stick to paths and collide downstream; queue size is used as an optimality target because it correlates with CCT and affects congestion control.The section defines an optimal algorithm as having average queue size q(m)=O(1), independent of message size.Source: §3.3 · pp. 4–5
3.4 Destination-Based Rotation
- Destination-Based Rotation distributes packets per destination across paths; the DRB model and ETHEREAL’s per-destination subflows both have bounded average queues.DRB uses per-destination, quantized-size rotation pointers at source hosts; ETHEREAL splits a flow into path-specific subflows. The DRB bound is proved for an N D/D/1 approximation, not the exact algorithm.Source: §3.4 · pp. 5–6
- Host-based destination balancing poses deployment challenges: DRB needs global reachable-switch knowledge, while ETHEREAL can require about 1K queue pairs per flow with 64-port switches.The paper identifies both constraints as consequences of running per-destination load balancing at the host.Source: §3.4 · p. 6
3.5 Validation via Simulation
- Simulations group SIMPLE RR, JSQ, and CONGA near linear max-queue growth, RPS, RSQ, REPS, and AR near square-root growth, and ETHEREAL, DRB, 4OFAN, and OFAN at O(1).The study also reports that maximum queue size correlates with CCT; its CCT metric measures increase beyond a derived permutation lower bound or naive lower bounds for non-permutation workloads.Source: §3.5 · p. 6
4 OFAN
OFAN realizes destination-based rotation in switches by consolidating traffic for destinations with common last-mile switches. Its modeled average queue size is bounded, and the paper describes benefits for congestion control and packet sizing.
4.1 Algorithm
- Switches know topology and link status through BGP and can share a destination’s rotation pointer across sources, unlike hosts observing only their own flows.The switch is presented as the natural home for destination rotation, which had previously been realized at the host.Source: §4.1 · p. 6
- OFAN consolidates destinations by common last-mile switches, with edge switches tracking destination edge switches and aggregation switches tracking destination pods.Those switches are mandatory waypoints on the respective paths, allowing traffic for multiple flows to share a pointer.Source: §4.1 · pp. 6–7
- OFAN cycles per-destination pointers across uplinks and uses pointer-dependent port permutations to reduce possible synchronization.It also separates pointers by quantized packet size, using distinct data and ACK groups in the simulations.Source: §4.1 · p. 7
4.2 Bounded queue sizes
- OFAN’s modeled average queue size is bounded.The paper reports the same Θ(1) result for OFAN as for DRB in its queueing model.Source: §4.2 · p. 8
- OFAN’s consolidated pointers keep queueing flat across four link stages and avoid DRB’s degradation for small messages.DRB’s many per-flow pointers leave a residual imbalance that small messages cannot amortize; the gap widens with network size.Source: §4.2 · p. 8
- Bounded queues can support more aggressive congestion-control designs and change the packet-size trade-off between queueing and header overhead.For DR schemes, the paper models O(1) network queueing as a constant number of packets; header and queueing overheads jointly shape the optimal packet size.Source: §4.2 · p. 8
5 POFAN Pipe-Based Implementation
POFAN adapts OFAN’s destination-based scheduling to pipe-based switch hardware by maintaining independent per-pipe pointers. The paper reports bounded modeled queues, practical resource use on Tofino 1, and no hardware-cluster performance evaluation.
5.1 POFAN
- POFAN uses independent per-pipe pointers per destination key, trading some OFAN consolidation and load-balancing quality for a design without cross-pipe combining hardware.The default 4OFAN configuration assumes four-port pipes to match current switch ASICs.Source: §5.1 · p. 8
- POFAN’s modeled average queue size is bounded, though splitting pointers increases the queue-bound constant.The paper attributes this to each independent pointer remaining balanced, keeping per-destination load balanced on each link.Source: §5.1 · p. 8
5.2 P4 implementation
- The Tofino 1 P4 implementation’s resource table shows that address-to-pointer mapping, not the RR pointers themselves, consumes most SRAM.Pointer storage grows with pipe and edge-switch counts in allocation steps; the paper says resources remain for other data-plane functionality.Source: Table 2 · p. 9, §5.2 · p. 9
- Resource limits prevented a hardware-cluster evaluation of POFAN, so performance comparisons with OFAN use simulation.Source: §5.2 · p. 9
6 Evaluation
The evaluation uses simulation to compare load-balancing schemes under collective workloads, with CCT as its main metric. It also examines scaling the network size, although the supplied scaling passage gives no outcome.
6 Evaluation
- The workloads are all-to-all and random permutation traffic matrices, chosen as representatives of collective algorithms rather than specific implementations.CCT runs from the first packet sent in a collective until its last packet is acknowledged.Source: §6 · p. 9
- The evaluation compares OFAN and 4OFAN against switch-based AR and host-based REPS, using htsim simulations of a 432-node three-tier fat tree by default.The default setup uses 800 Gbps links, 4,096 B payloads, 800 KB per-port buffers, and at least ten runs per scenario.Source: §6 · p. 9
6.1 Scaling
- Figure 5 varies the number of network nodes; its ATA scaling includes a constant-per-flow-size case in panel (b).Source: §6.1 · p. 9
(a) Permutation
Across network conditions and AI workloads, OFAN variants generally reduce CCT relative to existing load balancers; the largest reported gain is in 405B-parameter FSDP2 training. The evaluations also examine scaling, incremental deployment, congestion control, and MoE traffic.
(a) Permutation
- As network size grows, the 4OFAN-to-existing-algorithm CCT gap rises from about 5% at 16 nodes to about 11% at 1,024 nodes.For pipe-size variants, the POFAN-to-OFAN gap expands moderately, while aggregation-switch consolidation accounts for roughly half the CCT gap between OFAN and DRB.Source: (a) Permutation · p. 10, Figure 5 · p. 10, Figure 6 · p. 10
- As message size grows, the relative algorithm ranking remains stable, while the absolute CCT gap between OFAN variants and REPS/AR decreases.The paper attributes the shrinking gap to queueing growing as √m while CCT grows linearly with m; it conjectures that REPS worsens at very large message sizes because timeout-triggered freezing mode activates. Packet-size simulations also show a CCT sweet spot, roughly predicted by the model.Source: (a) Permutation · p. 10, Figure 7 · p. 10, Figure 8 · p. 10
6.2 Link Failures
- With random link failures, OFAN retains its relative ordering and continues to outperform REPS and AR.The comparison measures average CCT increase against a lower-bound baseline without link failures, with hosts paced at a feasible rate for each topology instance.Source: §6.2 · p. 11
6.3 Different Topologies
- In a two-level fat tree with 2,048 hosts, OFAN and 4OFAN reduce CCT by over 11% versus REPS and AR.Figure 10 evaluates this topology with switch radix k = 64.Source: §6.3 · p. 11, Figure 10 · p. 11
6.4 Incremental Deployment
- Mixing 4OFAN and AR switches decreases CCT, but the reduction is less than proportional to the upgraded fraction; edge-switch deployment performs best.The evaluation upgrades exactly half of the edge and aggregation switches, using four switch-selection strategies.Source: §6.4 · p. 11, Figure 11 · p. 11
6.5 Congestion Control
- With DCTCP, REPS and AR CCTs multiply by 3–4×, while POFAN and OFAN have CCT increases under 1%.With spraying-based CCAs, REPS and AR CCT inflation can worsen by at least 8% with NSCC and 14% with MSwift versus OFAN and 4OFAN; MSwift targets smaller queues.Source: §6.5 · pp. 11–12, Figure 12 · p. 12
6.6 MoE Workload
- Under NSCC, OFAN clearly outperforms other algorithms on the evaluated MoE workload, especially when expert-parallel load balancing reduces skew.Without congestion control, receiver incast is the bottleneck, buffers exceed 100 MB, and the load-balancing impact is small; with k = 8, OFAN and 4OFAN are equivalent.Source: §6.6 · pp. 12–13, Figure 13 · p. 12
6.7 Training Scenario
- At 405B parameters, OFAN reduces CCT increase beyond baseline by 16× with NSCC and 39× with MSwift versus the best existing model.4OFAN achieves 15× and 36× reductions, respectively; OFAN’s improvement stems from higher utilization as congestion control throttles REPS and AR.Source: §6.7 · p. 13
7 Discussion
The discussion considers exact line-rate realization of OFAN’s shared pointers and presents a fixed-latency combining pipeline as a feasible implementation approach.
7 Discussion
- Packets targeting the same destination switch can contend for the same shared round-robin register when a switch processes multiple packets per cycle.The contention resembles multiple processors issuing fetch-and-add operations to a shared counter.Source: §7 · p. 13
- A four-stage pipeline sorts packets by pointer key, combines requests, updates each register once by the group count, then restores packet order.Each packet leaves with its assigned uplink port.Source: §7 · p. 13
- The authors estimate the pipeline at roughly 105 gates and a few milliwatts, versus hundreds of watts for a switch ASIC.They regard exact OFAN as implementable and POFAN as the pragmatic near-term option.Source: §7 · p. 13
8 Related Work
The related-work discussion situates packet spraying among datacenter load-balancing approaches, then distinguishes destination-based rotation from fat-tree routing and existing switch offerings.
8 Related Work
- Many datacenter LB systems avoid packet spraying because of transport reordering concerns, while some add specialized mechanisms such as a new transport.Two cited exceptions evaluate spraying against ECMP and other LB granularities, but assume one transport and leave distance from optimality unclear.Source: §8 · p. 13
- Fat-tree deterministic routing uses a fixed path to each destination, whereas packet spraying is the paper’s focus for its potential to improve load balancing.Destination-based rotation also has roots in three-stage load-balanced routers that cyclically spread each flow over intermediate ports.Source: §8 · p. 13
- Broadcom GLB is limited to three-stage Clos networks with at most 64 edge switches and cannot run end-to-end on a five-layer fat tree.ByteDance’s SGLB mitigates next-next-hop visibility limits in three-level fat trees, which the authors apply in their evaluations.Source: §8 · pp. 13–14
9 Conclusion
The paper concludes that destination-aware switch rotation addresses the queueing limits of destination-oblivious schemes and reports large CCT-inflation reductions for 4OFAN in FSDP2. Its appendix constructs a tight lower-bound baseline for permutation CCT by accounting for data and ACK traffic.
9 Conclusion
- Destination-oblivious schemes cannot undo upward-path imbalance when a fat tree gives each destination a unique downward path; randomized spraying has an Ω(√m) queueing lower bound.The conclusion presents OFAN as per-destination switch rotation and reports that 4OFAN cuts CCT inflation by 15–36× in 405B-parameter FSDP2 evaluation.Source: §9 · p. 14
A Permutation CCT Lower-Bound
- The appendix targets a tight lower-bound baseline for permutation CCT at 100% host link rate and reports 17.05694 µs for m = 256.The measured minimum is 17.0587 µs with k = 4 and 17.0609 µs with k = 8; the k = 4 difference is 10^-4 of CCT.Source: A Permutation CCT Lower-Bound · p. 18
- The permutation CCT lower bound accounts for three communication modes: data only, interleaved data and ACKs, then ACKs only.The appendix models a receiving node on a flow traversing H = 6 hops and defines data/ACK serialization, packet-gap, and one-way propagation times.Source: A Permutation CCT Lower-Bound · pp. 18–19
B Proof of Thm. 1: Square-Root Scaling
The proof analyzes edge-uplink and aggregation-to-edge downlink arrivals to establish square-root-scale queue growth. It also bounds the queue excursions at both link classes by O(√m).
B Proof of Thm. 1: Square-Root Scaling
- Conditioned on no internal traffic, uplink and downlink arrivals are binomial with wt trials, mean t, and variance at least t/2.The variance bound uses w ≥ 2.Source: B Proof of Thm. 1: Square-Root Scaling · p. 19
- The time-average queue lower bound scales as √m across edge uplinks and aggregation-to-edge downlinks.These two link classes together yield the proof’s square-root lower bound.Source: B Proof of Thm. 1: Square-Root Scaling · p. 19
- For either link class, Lindley’s formula and a maximal-deviation bound give q↑(m), q↓(m) = O(√m).The maximal deviation is bounded using Doob’s inequality.Source: B Proof of Thm. 1: Square-Root Scaling · p. 20
C Proof of Thm. 2: Synchronization
This section analyzes queue behavior under synchronization, including downlink queueing and bounded uplink queues for OFAN and other schemes. It also covers OFAN’s edge-uplink bound, its broader approximate queue model, and related load-balancing and scaling results with operational caveats.
C Proof of Thm. 2: Synchronization
- Synchronization yields Θ(m) queueing on downlinks while uplink queues remain bounded, with q↑(m) = O(1).Sticky flows can contend on the same aggregation-to-edge downlink; the proof establishes q(m) = Θ(m) and q↓(m) = Θ(m).Source: C Proof of Thm. 2: Synchronization · pp. 20–21
D DRB Bounded Queues
- DRB edge-uplink queues never exceed w + 1 packets for any message size m; other layers use an approximate N·D/D/1 model.The approximation becomes less exact at successive layers as traffic loses periodicity.Source: D DRB Bounded Queues · pp. 21–22
E ETHEREAL Bounded Queues
- ETHEREAL has average queue size q(m) = Θ(1), and its edge-uplink queues never exceed k^2/4 + 1 packets, whatever m.The edge-uplink bound is larger than DRB’s w + 1 because a flow may send consecutive packets through the same uplink.Source: E ETHEREAL Bounded Queues · p. 22
F.1 Correctness of Consolidation
- With consolidation at both source edge and aggregation switches, all downlinks into any switch have equal load.The aggregation-switch invariant holds for consolidation per destination host, edge, or aggregation switch; the edge switch can consolidate per destination host or edge.Source: §F.1 · p. 23
F.2 Low-Cost Per-Destination Port Orders
- Ofan derives per-destination port orders from a shared global permutation using XOR and addition, requiring no per-destination storage beyond pointers.The construction gives up to 30 distinct cyclic orders when w = 6; per-packet work uses small integer operations on ⌈log2 w⌉-bit values.Source: §F.2 · pp. 23–24
F.3 Scaling Impact vs. DRB
- For random inter-pod traffic, Ofan needs at least k^2/(4(k − 1)) > k/4 fewer pointers per destination aggregation switch than DRB.Ofan consolidates per destination aggregation switch, while DRB consolidates per destination host.Source: §F.3 · p. 24
- Under the same traffic, OFAN’s queue-size advantage over DRB increases with network size across 30 runs per size.The comparison is the ratio of DRB’s maximum queue size to OFAN’s maximum queue size.Source: §F.3 · p. 24
F.4 Model with Bounded Average Queue Sizes
- OFAN’s edge-uplink queue is bounded by w+1 packets, regardless of message size m.A pointer shared by f flows contributes at most f packets to a port in any interval; the edge switch’s northbound flows are split among its pointers.Source: §F.4 · p. 25
- The OFAN queue model approximates consolidated pointers and stationary queues; it fits edge queues well but fits later layers less well, especially downlinks.The ND/D/1 model is approximate and independent of message size m; the model neglects pointer-period variability.Source: §F.4 · pp. 24–25, Figure 18 · p. 25
F.5 Dynamic First Pointer
- Without link failures, choosing the shortest queue for the first pointer and cycling in unshuffled round-robin order slightly improves CCT, but requires collective-start knowledge or pointer restarts.This variant was not further evaluated.Source: §F.5 · p. 25
G Proof of Thm. 6: Optimal Packet Size
The proof models packet-size-dependent message transmission and queueing times, then minimizes their sum. Strict convexity for P > H supports the claimed minimizer.
G Proof of Thm. 6: Optimal Packet Size
- The proof minimizes the sum of message-send and queueing times after dropping their common factor 1/C.The CCT model also includes zero-load RTT, which does not depend on packet size P.Source: G Proof of Thm. 6: Optimal Packet Size · p. 25
- The sending term accounts for message payload P − H and packet transmission time P/C, while the queueing term assumes α packets of size P.H accounts for header and inter-frame gap components in the stated approximation.Source: G Proof of Thm. 6: Optimal Packet Size · p. 25
- Because f′′(P) > 0 for every P > H, the objective is strictly convex, supporting the claimed minimizer.The proof identifies the resulting value as the claimed result.Source: G Proof of Thm. 6: Optimal Packet Size · p. 25
H Proof of POFAN Queueing Model (Thm. 7)
POFAN preserves message-size-independent queue bounds by giving each ingress pipe its own rotating pointer while keeping link loads balanced. Its edge-uplink bound remains deterministic, but the model is only approximate beyond the edge layer.
H Proof of POFAN Queueing Model (Thm. 7)
- POFAN uses one rotating pointer per key and ingress pipe, so each pipe spreads its traffic across the switch’s uplinks.A key identifies the destination edge switch or pod and size class; each pointer rotates over all uplinks.Source: H Proof of POFAN Queueing Model (Thm. 7) · p. 25
- q(m) = Θ(1): POFAN’s queue size remains independent of message size because its source count is at most P times OFAN’s and does not depend on m.The modeled N ·D/D/1 queue is stationary for any number of sources.Source: H Proof of POFAN Queueing Model (Thm. 7) · p. 25
- Each pipe pointer balances its own traffic across uplinks, keeping aggregate link loads balanced and every link at load ρ ≤ 1.The proofs of Theorems 8 and 9 therefore hold unchanged.Source: H Proof of POFAN Queueing Model (Thm. 7) · p. 25
- At edge switches, POFAN’s deterministic bound carries over: each edge-uplink queue is at most w+1 packets, regardless of message size m.The bound follows from splitting northbound flows among pointers so each shared pointer visits every uplink f times per w periods.Source: H Proof of POFAN Queueing Model (Thm. 7) · p. 26
- At aggregation switches, P ingress pipes can raise the pointer count from at most k−1 to P(k−1); the model assumes random pointer initialization and is approximate beyond the edge layer.For k = 64 and W = 4, the example gives P = 8.Source: H Proof of POFAN Queueing Model (Thm. 7) · p. 26
I OFAN’s Hardware Implementation
OFAN’s shared per-destination pointers create a line-rate read-modify-write hazard when packets for the same destination arrive concurrently. A fixed-latency pipeline combines those requests, assigns round-robin uplinks, and fits within modest switch resources.
I OFAN’s Hardware Implementation
- Concurrent packets for the same destination must access one shared OFAN round-robin pointer, creating a line-rate read-modify-write hazard.A switch can process packets from different input ports in parallel, including multiple packets for the same destination within one cycle.Source: I OFAN’s Hardware Implementation · p. 26
- A fixed-latency pipeline sorts packets by pointer key, combines matching requests, updates each shared pointer once, then distributes assigned uplinks and restores packet order.The purpose-built circuit handles a small fixed set of local pointers rather than using a general combining network with variable latency.Source: I OFAN’s Hardware Implementation · p. 26
- For three packets sharing a pointer at 1, the pipeline assigns ports 1, 2, and 3, then advances the pointer to 4 modulo 32.The pointer is touched once for the group while preserving the assignments of sequential round-robin processing.Source: I OFAN’s Hardware Implementation · p. 26
- ≈127K gates and ≈6mW of dynamic power are estimated for the pipeline at a 1 GHz clock and 10% switching activity.The estimate includes a ≈20K-bit register file and sorting, unsorting, and read-modify-write logic.Source: I OFAN’s Hardware Implementation · p. 27
- The estimated ≈6mW adds ≈0.002% to a BCM56980’s 300 W power budget, while the ≈20K-bit register file is ≈0.0037% of its 64 MB buffer memory.The cited chip is the Tomahawk 3.Source: I OFAN’s Hardware Implementation · p. 27
- OFAN requires modifying only a switch’s core scheduling algorithm, with no end-host changes and continued use of existing routing protocols such as BGP W-ECMP.Source: I OFAN’s Hardware Implementation · p. 27