arborist/docs
russell@unturf.com 2ad2dceada
ticket #000039: record embed-throughput measurement + ingest-stays-fast rationale (§14.6)
New §14.6 captures the 2026-05-11 findings:

- Measured embed rate: ~4.3 chunks/s on the contended dev box (load
  ~11 on 8 cores; the embed process got ~28% of one core). One wiki
  shard (~1.56M chunks) at that rate ≈ 100h ≈ 4+ days; all four ≈
  ~16 days. The full int8 backfill was abandoned as not feasible to
  brute-force there.
- The 54K-chunk partial on 000.db confirmed ~409 B/chunk apparent
  → 384 B amortized → ~2.4 GB for the full 6.24M-chunk corpus at
  int8 — the deterministic number a full backfill would only
  re-confirm, so finishing it bought nothing.
- On an idle healthy box (batching + all cores) bge-small does
  ~50-200 chunks/s → full corpus ≈ ~9-35h (the ticket's earlier
  "~17h" is the optimistic end).
- Per-chunk cost breakdown: bge-small ONNX inference ~5-30 ms/chunk
  dominates; the existing arborist ingest steps (chunker + SHA-256
  leaf + Merkle commit + sqlite INSERTs + zstd + FTS5) are well
  under 1 ms total. So adding vec multiplies ingest by ~10-100×,
  entirely in the ONNX matmuls — the non-vec ingest path is
  unchanged and still runs at hundreds of chunks/s.
- Implication for §14.2: this is *why* lazy-out-of-band is the
  default and `arborist ingest --embed` is the opt-in. Production
  guidance: a corpus-wide backfill is a one-time batch job (hours
  on idle / days on contended), best run off-peak or on a dedicated
  box; it does not slow ongoing ingest (which never embeds unless
  --embed is passed); a GPU/accelerated embedder is a drop-in via
  the pluggable Embedder callable if backfill latency matters.

Status line updated to point at §14.6. Doc-only.
2026-05-12 07:14:12 -04:00
..
_source #000035 closed — v7 substrate spec into the repo; § 9.10 folded in 2026-05-11 17:06:19 -04:00
diagrams docs/diagrams: rename aborist-modules → arborist-modules (post-rename cleanup) 2026-05-08 07:50:28 -04:00
tickets ticket #000039: record embed-throughput measurement + ingest-stays-fast rationale (§14.6) 2026-05-12 07:14:12 -04:00
bench-maxing.md aborist/arborist 2026-05-07 09:31:49 -04:00
benchmarks.md aborist/arborist 2026-05-07 09:31:49 -04:00
calculator-test-patterns.md ticket #000036 Tier-2: dav1d Option B (conservative B1 envelope) applied in v1 2026-05-11 07:06:50 -04:00
cti-architecture.md aborist/arborist 2026-05-07 09:31:49 -04:00
mesh.md aborist/arborist 2026-05-07 09:31:49 -04:00
pi-star-composition.md pi_star: land ticket #000015 (π* domain library + composition algebra) 2026-05-07 16:51:33 -04:00
qa-modes-bench.md #000048 step 2.4 — parse_pointer_claims clause segmentation 2026-05-11 17:09:06 -04:00
seven-point-program.md tests/doc_counts: regression test for numeric claims in docs/ (4x drift fix) 2026-05-10 16:15:52 -04:00
soft-hash-channel-analysis.md docs/#000018 §9.2: mark resolved — φ_PRG = HMAC-SHA-512 (#000035 closed) 2026-05-11 17:20:48 -04:00
soft-hash-channel-t3-bound.md ticket #000036: add KAT-regen tooling + close 2026-05-11 08:02:25 -04:00
spec-methodology.md docs: land ticket #000019 (spec methodology for π*, V, policy fields) 2026-05-07 16:53:28 -04:00
TICKETS.md #000048 — fold the step-2.2 finding through the ticket + the cross-refs 2026-05-11 17:34:18 -04:00
tool-action-dag-design.md docs: add tool-action-dag-design.md research path (pre-ticket) 2026-05-07 19:47:50 -04:00
v7w-frontier-catalog.md #000013 closed: v7-W spatial-temporal substrate paper + namespace 2026-05-09 15:00:05 -04:00
v8-fork-score.md CLI: arborist v8 score → arborist substrate score 2026-05-10 09:12:34 -04:00
warrant-substrate-cookbook.md #000047 — close: delta_aggregator knob on ForkScore (Option D) 2026-05-11 08:27:38 -04:00
zk-frontier-bench.md #000016 parked: ZK frontier-proof bench plan + wire protocol 2026-05-09 15:05:08 -04:00
zk-wire-protocol.md #000016 parked: ZK frontier-proof bench plan + wire protocol 2026-05-09 15:05:08 -04:00