Skip to content

probe(recipe): order statistics on the shipped PhaseLut, all-ranks timing, power-sum fold cost (D-ART-2) - #1421

Merged
AdaWorldAPI merged 4 commits into
mainfrom
ccr-b2e415d9-4jfvyk-phaselut-probe
Oct 8, 2026
Merged

AdaWorldAPI merged 4 commits into
mainfrom
ccr-b2e415d9-4jfvyk-phaselut-probe

Conversation

@AdaWorldAPI

Copy link
Copy Markdown
Owner

Follow-up to D-ART-1 (#1418). It covers three open items and changes only the probe and the board.

1. Sector permutation on ndarray::simd::PhaseLut

Arm E (two fixed orderings plus one cosine) now also runs with every cosine taken from the shipped table (ndarray #343).

m single order statistic error on R = 100 stated bound
any of 3, 16, 256 15–19 ns about 3.6e-5 7.8–8.3e-5

For comparison:

  • generating and selecting costs 106 ns at m = 3 and 5 µs at m = 256;
  • the bucketed profile table costs 31–34 ns at m = 3;
  • the f64 sector arm costs 42–56 ns.

The bound (r + e) · lerp_error_bound() is asserted on every rank. As a disable run, using nearest instead of lerp gives 0.077 and fails it.

2. All m order statistics per instance

The interpolated profile row wins here: 18 / 42 / 493 ns for m = 3 / 16 / 256. Against it:

arm m = 3 m = 16 m = 256
E with PhaseLut 35 ns 133 ns 1,956 ns
generate and sort 92 ns 432 ns 9,101 ns

3. Where the power-sum fold spends its time

The earlier "fused 3.7 vs shipped 4.8 ns/row" gap was noise between two i128 folds. Isolated by ingredient on 1M rows:

fold ns/row
i128 accumulators 4.4–7.5
i64 accumulators 0.5–0.9
shipped grouped fold 5.3–8.1

The mask walk and group key add nothing measurable. The lever is the accumulator width. i64 is not exact for full-range i32, so the proposal is a split-accumulator fold in ndarray: PROBE.

The probe's i128 summary transform also agrees bitwise with the shipped CrossPowerSums::checked_affine (ndarray #344).

Board: entries/2026-10-08-recipe-probe-phaselut-foldcost.md, plus a STATUS_BOARD.md row D-ART-2.

🤖 Generated with Claude Code

https://claude.ai/code/session_01EFw2WdKr1oxvaKCJC2ua2R


Generated by Claude Code

claude added 3 commits October 8, 2026 20:51
…er-statistics timing; shipped checked_affine cross-check

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EFw2WdKr1oxvaKCJC2ua2R
…old cost by ingredient)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EFw2WdKr1oxvaKCJC2ua2R
@coderabbitai

coderabbitai Bot commented Oct 8, 2026 •

Copy link
Copy Markdown

Review in Change Stack →

Note

Currently processing new changes in this PR. This may take a few minutes, please wait...

⚙️ Run configuration
  • Configuration used: Organization UI
  • Review profile: CHILL
  • Plan: Essentials
  • Run ID: 6767dd60-f070-445f-97e9-b0ac7fe6019a
📥 Commits

Reviewing files that changed from the base of the PR and between 4e1428f and 5028237.

📒 Files selected for processing (4)
  • .claude/board/STATUS_BOARD.md
  • .claude/board/entries/2026-10-08-recipe-probe-phaselut-foldcost.md
  • .claude/board/entries/README.md
  • crates/lance-graph-mask-risc/examples/algebraic_recipe_probe.rs
 __________________________________________________
< Making NVIDIA proud with all this bug detection. >
 --------------------------------------------------
  \
   \   (\__/)
       (•ㅅ•)
       /   づ
✨ Finishing Touches
📝 Generate docstrings
  • Commit to this branch
  • Create a new PR
  • Autopilot · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

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 @coderabbitai help to get the list of available commands.

The D path needs a 2-D window operand that mask-risc's IR lacks. Shipping
F alone would bring back the 2.5x worst case the per-query choice removes.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EFw2WdKr1oxvaKCJC2ua2R
@AdaWorldAPI
AdaWorldAPI marked this pull request as ready for review October 8, 2026 22:45
@AdaWorldAPI
AdaWorldAPI merged commit 0bf15c0 into main Oct 8, 2026
11 checks passed
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 8, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-08T22:46:10.418791Z 5028237 Draft marked ready
ℹ️ 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" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants