Model card: recent DaisyChain-Web updates (verification stack, FineWeb-Edu parquet streaming, sync-guard repair, CUTLASS fusions)
Browse files
README.md
CHANGED
|
@@ -93,6 +93,45 @@ restore the whole group after a failure.
|
|
| 93 |
|
| 94 |
**Live demo:** https://huggingface.co/spaces/Quazim0t0/DaisyChain-Web
|
| 95 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 96 |
---
|
| 97 |
|
| 98 |
## How it works
|
|
|
|
| 93 |
|
| 94 |
**Live demo:** https://huggingface.co/spaces/Quazim0t0/DaisyChain-Web
|
| 95 |
|
| 96 |
+
### Recent updates (July 2026) — DaisyChain-Web
|
| 97 |
+
|
| 98 |
+
**Verification stack** — the browser trainer's correctness is now *checked by
|
| 99 |
+
things that run*, not argued ([full results](web/TEST_RESULTS.md)):
|
| 100 |
+
- **IEEE-754 oracle** (`web/test_ieee.js`): a binary32 oracle built from the
|
| 101 |
+
standard in exact BigInt arithmetic proves the JS epilogue mirror is
|
| 102 |
+
spec-correct — and rejects the old round-once mirror on 34% of inputs.
|
| 103 |
+
- **Metamorphic properties + oracle mutation scoring** (`test_metamorphic.js`,
|
| 104 |
+
`test_corpus.js`): properties needing no reference implementation, then
|
| 105 |
+
scored against an externally-authored bug taxonomy — properties catch 2/2
|
| 106 |
+
loop bugs, the exact differential gate catches 4/4.
|
| 107 |
+
- **Exact kernel gates on every live kernel**, a continuous random-cell audit
|
| 108 |
+
at live shapes, and a cross-device kernel probe (same seeded int8 GEMM,
|
| 109 |
+
same hash on every honest device, any backend).
|
| 110 |
+
|
| 111 |
+
**Training data** — FineWeb-Edu (10BT sample) is the hardcoded dataset. The
|
| 112 |
+
Space reads random slices of the parquet shards straight off the HF CDN with
|
| 113 |
+
range requests (pure-JS `hyparquet`, SNAPPY) and serves plain text at `/data`
|
| 114 |
+
— no dependency on the datasets-server rows API and its 503s.
|
| 115 |
+
|
| 116 |
+
**Resilience** — the sync guard now *repairs* instead of halting: a roster
|
| 117 |
+
gradient that reached the leader but not some follower (asymmetric WebRTC
|
| 118 |
+
mesh) is re-requested from the leader, bit-exact, and the run continues. The
|
| 119 |
+
guard still stops anything that would fork the weights.
|
| 120 |
+
|
| 121 |
+
**CUTLASS-style kernel work**, each step proven bit-identical or exact-gated:
|
| 122 |
+
- **Dispatch-optimized backward** (ex. 05/24): independent GEMMs overlapped,
|
| 123 |
+
sibling trios fused into batch-3 dispatches — bit-identical gradients,
|
| 124 |
+
dormant int8-backward path down from 1.63× to 1.21× vs float.
|
| 125 |
+
- **QKV dual-GEMM fusion** (ex. 45): q/k/v share one left operand — quantized
|
| 126 |
+
once, one batched dispatch, zero changed bits.
|
| 127 |
+
- **B2B MLP chain** (ex. 13 + 23): both MLP GEMMs back-to-back on the GPU with
|
| 128 |
+
a fused per-row absmax reduction; the intermediate is quantized on-device
|
| 129 |
+
via a WGSL-exact respec (`floor(f32(x·invScale)+0.5)` — no GPU division)
|
| 130 |
+
whose fround-stepped JS mirror keeps mixed GPU/CPU fleets bit-identical.
|
| 131 |
+
|
| 132 |
+
All ten test suites (`cd web && npm test`) pass; results with methodology in
|
| 133 |
+
[`web/TEST_RESULTS.md`](web/TEST_RESULTS.md).
|
| 134 |
+
|
| 135 |
---
|
| 136 |
|
| 137 |
## How it works
|