SPB Git

spb/localvm-research Public License

Running LLMs larger than memory on a consumer Mac — falsification-driven research: margin-gated deferred refinement, out-of-core verification on Apple Silicon. TR-01 published.

Python 63.2% JavaScript 23.5% CSS 11.8% Shell 0.9% Makefile 0.5%

# project: localvm-research document: expB_token_stability/hypothesis author: Simon-Pierre Boucher contact: contact@spboucher.ai created: 2026-08-12 modified: 2026-08-12 status: reviewed

# Hypothesis — expB_token_stability

Consumes expA's block-energy trace. Decides the temporal-locality route for C1's escalation bytes (and G01/G06/G12/G13 cache designs): is the important- block set stable enough across consecutive tokens to cache?

text
Hypothesis
  The per-token important-block set (blocks covering 95% of FFN energy) is
  temporally sticky: mean Jaccard(t, t+1) ≥ 0.5, decaying slowly with
  distance, and the UNION working set over a 128-token generation stays
  well below the full model (≤80% of blocks) — i.e., a generation has a
  reusable working set that a RAM cache can hold, so residual/expert bytes
  are fetched once per window, not once per token.

Falsification criterion
  If Jaccard(t, t+1) < 0.3 (set churns almost completely every token) or
  the 128-token union ≥ 95% of all blocks (no working set exists at
  generation scale), the temporal-locality route (b) for C1 dies, leaving
  only batch amortization — C1 then merges into C2 (amortized
  verification), and G06/G12 prefetchers must predict, not cache.

Method
  Load expA's block_energy_trace.npz (positions × 28 layers × 96 blocks,
  with domain and trajectory ids). Per trajectory and layer:
  top-set(t) = smallest block set covering 95% of position-t energy.
  Metrics: mean Jaccard(t, t+δ) for δ ∈ {1, 2, 4, 8, 16, 32}; union
  working-set fraction over windows {8, 32, 128} tokens; per-layer and
  per-domain aggregates. Cross-prompt preview (expC-lite): per-trajectory
  aggregate top-set, Jaccard within-domain vs across-domain.

Baseline
  Random sets of identical size (expected Jaccard for independent draws)
  — the null; and δ→∞ behavior (unconditional overlap between distant
  tokens) as the floor stickiness must beat.

Result
  KILL TRIGGERED: 128-token union = 99.9% of blocks (≥95% line); Jaccard(t,t+1)=0.69 vs random null 0.64 — stickiness is a set-size artifact. Domain locality nil (within=across=1.0).

Interpretation
  No cacheable working set for dense SwiGLU energy sets: DejaVu/LLM-in-a-flash paradigm does not transfer without ReLUfication. G06/G12/G13 dead on this family; pivot to batch amortization (C1 merges into C2).

Next experiment
  Prototype margin-gated deferred-refinement runtime; expG rerun at 8B.