code wiki / (root) / nx_fabric_flow.nx

nx_fabric_flow.nx

buildroot/runtime/nx_fabric_flow.nx

6796 B147 linesdepth 7pulls 9 transitivereach 1 importersview sourcekind tooltopic fabric
docsdependenciesstructsconstsfunctions

about

nx_fabric_flow.nx -- R1 of the SkyHammer scale-up-fabric exceed ladder (knowledge/research/2026-06-23-skyhammer-fabric-sclass-exceed-benchmark.md ยง7). SkyHammer sells "deterministic flow control ... lossless behavior" IN SILICON. At Nishi's altitude (software, commodity HW) the honest, measurable expression is a CREDIT-BASED deterministic flow controller over a bounded-buffer link: the sender may only inject what the receiver has buffer for, so the queue NEVER overflows (lossless) and latency stays BOUNDED (deterministic). An uncontrolled sender, by contrast, overruns the buffer -> drops -> (for reliable delivery) retransmits -> a long latency tail. FOUNDED ON (composes, does not reinvent -- rule #15 / anti-orphan): nx_h2_flow.nx -- the PROVEN credit-window primitive (RFC 9113 6.9: init_to / consume[overdraw->FLOW_CONTROL_ERROR] / apply_window_update). The receiver's free buffer IS the flow-control window; sending CONSUMES it, draining REPLENISHES it (WINDOW_UPDATE). No new flow-control math is authored here -- only the link model + the discrete-event simulation that measures the exceed. Importing nx_h2_flow transitively splices nx_h2_frame->nx_hpack->nx_str->syscalls (single import; importing nx_syscalls too would be the RC6 double-import landmine). Integer-only (no float, ecosystem law). expect_exit: 0 license_tier: ORIGINAL

dependencies 1 imports · 1 importers

nx_h2_flow.nx nx_fabric_flow.nx nx_fabric_flow_gate.nx

imports: nx_h2_flow.nx

imported by: nx_fabric_flow_gate.nx

structs

30struct FfMetrics

consts

23const FF_MAGIC_20000: i64 = 20000
26const FF_UNCTL: i64 = 0 // baseline: sender ignores credit -> overflow drops
27const FF_CREDIT: i64 = 1 // R1: credit-controlled via nx_h2_flow (lossless by construction)
28const FF_NC1: i64 = 2 // NC1: credit BOOKKEEPING runs but the backpressure GATE is removed

functions

41func ff_run_sim(mode: i64, N: i64, B: i64, D: i64, R: i64, m: *FfMetrics) -> i64
147func main() -> i64 { return 0 }