Repository navigation
D-MHB-1: Mexican-hat response without a raster (probe + board) - #1415
Conversation
Measures whether popcount stacking, a quantised DoG and an exact early exit can answer a centre-surround query without per-point geometry or a materialised raster. Probe only; no production primitive. - Bit-sliced weight planes (F) are exact (asserted equal to direct geometry on every centre) at a constant ~600 ns per query. - Direct window geometry (D) wins below a density of about 0.1. - Equal-q ring buckets (E) are fast but wrong at every K tried. - The shipped mask-risc path (B) materialises a weight lane per query and is 26-150x slower. - The exact-bound early exit (H) saves about 20 % at the median threshold and equals the full decision on every query. - Rolling-Floor control and statistical early exit are parked: the deciding quantity is an exact popcount. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01EFw2WdKr1oxvaKCJC2ua2R
|
Note Currently processing new changes in this PR. This may take a few minutes, please wait... ⚙️ Run configuration
📒 Files selected for processing (4)
✨ Finishing Touches📝 Generate docstrings
Warning Billing warning: we have not been able to collect payment for this subscription for more than 72 hours. Please update the payment method or pay any pending invoices in Billing to avoid service interruption. Comment |
|
Add Carrot credits or activate Agent usage billing to use Autopilot |
Keeps both STATUS_BOARD sections (D-PHT and D-MHB from #1415) and regenerates the entries index. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01EFw2WdKr1oxvaKCJC2ua2R
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 3f84990c7f
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| let (_, ns_h) = time(5, || { | ||
| qs.iter() | ||
| .map(|&(x, y)| arm_h(g, k, &order, &up, &lo, x, y, t, &mut Work::default()).1) | ||
| .sum::<usize>() | ||
| }); |
There was a problem hiding this comment.
Preserve timed sums against dead-code elimination
In optimized release builds, the value returned by time is bound to _, and this closure never passes its sum to std::hint::black_box as the main bench harness does. After inlining, LLVM may remove the unused row/popcount work or retain only panic-relevant checks, so the reported H latency and the documented ~20% advantage over F are not reliable; consume each timed sum with black_box before comparing the timings.
Useful? React with 👍 / 👎.
| } | ||
| } | ||
| // The full scan is O(grid) per query; check it on a few centres. | ||
| for &(cx, cy) in qs.iter().take(8) { |
There was a problem hiding this comment.
Report the actual full-scan coverage
The new status-board gate says the full scan agrees on every centre, and the entry associates the exact-equality check with 1,024 centres per fixture, but arm_scan is evaluated for only the first eight centres while D/F/G use the full query set. Anyone relying on the board therefore sees the full-scan oracle coverage overstated by 128×; either run this oracle over all centres or qualify the board and printed claim as eight centres per fixture.
Useful? React with 👍 / 👎.
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
This PR adds a probe and a board entry. No production primitive and no ndarray change.
The question: can popcount stacking, a quantised Mexican hat and an exact early exit answer a centre-surround query without per-point geometry and without a materialised raster? And is a Rolling-Floor controller worth adding on top?
The query:
S(c) = Σ_{p ∈ P, |p − c|² ≤ R²} w(|p − c|²).Pis a presence bitmap.wis a normalised DoG, quantised to integers.Files:
crates/lance-graph-mask-risc/examples/mexhat_bucket_probe.rsentries/2026-10-08-mexhat-bucket-cascade-probe.md, plus aSTATUS_BOARDrowInventory (read in code)
ndarray:
RollingFloor: exact moments, a quarter-σ lattice, thresholds derived on demand. Not re-exported fromndarray::simd.hamming_distance_within: an exact early exit.Cascade:lsi.rsmexican_hatis a five-step percentile function, not a DoG.passed: true.The drift observation reproduces: FIXED and SHIPPED reject 97.55 % in phase 2. That probe tests
Cascade, notRollingFloor.Measured
Medians of 10 runs, ns per query, 1M grid:
Σ_b 2^b (popcount(P ∧ Pos_b) − popcount(P ∧ Neg_b))equals direct geometry on every checked centre (asserted), at constant cost, with no value lane, no square root and noexp.S ≥ Twith exact[L, U]row bounds:Counterexamples and falsifiers
(r1, r2)buckets hold both a dark and a bright fringe cell; at λ/8, none do.F differs from D.Verdicts
ndarray::simd;lsi.rsas a DoG.Proposed, not implemented — R-MHB-1: rewrite a masked sum over a static, narrow integer weight template into bit-sliced fused
Counts over resident planes.Checks
cargo clippy -p lance-graph-mask-risc --examples -D warnings: clean.fmt: clean.🤖 Generated with Claude Code
https://claude.ai/code/session_01EFw2WdKr1oxvaKCJC2ua2R
Generated by Claude Code