flamingcow
|
7fa48da73c
|
Judge loss by arrival order and a deadline, one tx ring per stream
|
2026-08-31 14:33:09 -07:00 |
|
flamingcow
|
4c6de3b618
|
Power: 2 streams and a 2.0 GHz clock pinned by a new checkMaxFreq SETTINGS check (performance governor + scaling_max_freq = fixed clock) take line rate from 80 W to 29.7 W package, qualified 96 s zero-loss; measured on the bench: streams buy scheduling headroom not watts (C1-parked threads, lonelier spinners boost harder), relaxed cpu_dma_latency never reaches deep idle (scheduler spreads wakeups, ~2% residency), offlining E-cores saves 1.7 W and is wire-invisible mid-run, the cliff is TX starvation below 1.6 GHz (1.2 GHz sags to ~18 G, zero errors)
|
2026-08-19 14:11:19 -07:00 |
|
flamingcow
|
66ff49f9d2
|
Noise ripped out after the bench verdict (tightly-wrapped unshielded cables move victim SNR only 0.2-0.3 dB, recorded in measurement.md dead ends): noise.go deleted with the noiser, phase clock and panel lane; configureNoise/checkPrivFlag gone so the X710 pair is untouched; console noise column, NOISE links rows and lane colors removed; driverPair rehomed to system.go, carrierUp to phy.go; history anchors to run start (frame-rate sampling and draw-clock roll kept — they fix display latency for every lane); goals/hardware/state/nics docs updated; verified on hardware (20.00G, zero errors, ECD 41m, SNR +7.6)
|
2026-08-17 21:37:18 -07:00 |
|
flamingcow
|
38c2cc4da2
|
Hardware lock-in cleanup: ice RX counter set and by-driver map collapsed to the single ixgbe nicRxFields list (newNICPoller drops its redundant driver gate), checkCoalesce loses the try-tx-then-EINVAL fallback and sets rx-usecs shared with tx as the one path, ice-attributed comments neutralized, dead errs.total removed with its redundant test assertion; ice counter reference set recorded in docs/nics/e810; verified on hardware (20.00G, zero errors, ECD 41m)
|
2026-08-17 12:45:41 -07:00 |
|
flamingcow
|
3d7105073e
|
X520 live as the product NIC: rate buckets re-keyed to read time (one shared clock, one commit per drained batch) with the backward smear as a settled window — each completed bucket enters once, donates excess to the nearest earlier deficits once, locks for display when nothing later can refill it (per-sample recompute double-counted excess and read >20G on a 20G wire); timestamp machinery deleted (ts.go, SO_TIMESTAMPING, rx_filter=ALL check) after the audit confirmed the buckets were its sole consumer; testDriver ixgbe; RollBall mailbox hardened against orphaned-command completions (never sample status before a poll gap, value from the same block read, devad/reg echo required — a killed session's 7.60 read answered a PHY ID as 0x0006); full hardware pass: 20.00G flat both directions, zero errors, ECD 42m, SNR +7.4dB
|
2026-08-17 09:35:58 -07:00 |
|
flamingcow
|
bba1fa5e02
|
Jumbo in the size mix (MTU 9000 + module jumbo pinned), check-first module config trusting GET reads, cable diag async at startup through the reset path, MODULES table dissolved into SETTINGS/LINKS, per-driver NIC counter sets, comment cleanup
|
2026-08-13 08:04:26 -07:00 |
|
flamingcow
|
979dc7a772
|
BCM module diagnostics replace timestamp probes: bringup forces EEE off and runs ECD (re-run on every reset, re-baselining past its blip), 1 Hz SNR margin + corrected counters on panel and console; X520 bench divergences bypassed and tracked in open-questions
|
2026-08-13 07:10:39 -07:00 |
|
flamingcow
|
2fcab83756
|
Drive a noise cable on the i40e pair, cycling its link down and up since the module PHYs ignore everything softer, and flag its absence beside the error columns
|
2026-08-05 10:49:23 -07:00 |
|
flamingcow
|
ab60cc1cfc
|
Cap cpu idle exit latency for the life of the run, deep enough to keep C1 and shallow enough to block the rest
|
2026-08-04 22:50:22 -07:00 |
|
flamingcow
|
19b0f1d2ea
|
Refuse a filter location something else holds, and the driver's word on how many it wrote
|
2026-08-04 22:12:03 -07:00 |
|
flamingcow
|
4c7062d600
|
Take the line rate as a constant so nothing has to be plugged in, and drop the config box
|
2026-08-04 21:58:52 -07:00 |
|
flamingcow
|
f5a6420cfa
|
Drop the fatal flag now that every failed check is fatal
|
2026-08-04 13:33:08 -07:00 |
|
flamingcow
|
66bfb88dd7
|
Make every failed check and unreadable counter fatal instead of degrading
|
2026-08-04 13:03:07 -07:00 |
|
flamingcow
|
49a1a2f829
|
Read rx errors from the driver stats array and add the pcs counters
|
2026-08-04 11:27:30 -07:00 |
|
flamingcow
|
832a2b42d6
|
Mount the filesystems we need so this can run as PID 1
|
2026-07-26 10:54:19 -07:00 |
|
flamingcow
|
0f16edfe61
|
Count link and syscall failures instead of printing them
|
2026-07-25 22:54:04 -07:00 |
|
flamingcow
|
1b322bb32b
|
Measure cable length from hardware transmit and receive timestamps
|
2026-07-25 22:38:52 -07:00 |
|
flamingcow
|
ed0f1d11e6
|
Default to seven steered streams across the full frame size range
|
2026-07-25 19:15:20 -07:00 |
|
flamingcow
|
7e77d22f36
|
Give each stream its own ethertype steered to its own rx queue
|
2026-07-25 19:08:11 -07:00 |
|
flamingcow
|
2516d908b9
|
Remove unmanaged check; nothing else will own these interfaces
|
2026-07-25 18:23:01 -07:00 |
|
flamingcow
|
3ba68952bb
|
Always color output and fold settled values into constants
|
2026-07-25 18:20:34 -07:00 |
|
flamingcow
|
29c6ce0b56
|
Drop drift detection; host tuning is one-shot system startup
|
2026-07-25 18:18:00 -07:00 |
|