Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
simd: trampoline hpc::cascade as ndarray::simd::cascade
Consumers under the all-SIMD-from-ndarray::simd invariant need the
Belichtungsmesser surface (Cascade::expose -> Band, recalibrate,
PackedDatabase, adaptive_resolution) without reaching into crate::hpc
directly — the Prozentrang/distribution-shape payload work in the
consumer stack reads exposure bands through this path. Whole-module
alias rather than an item list, so new cascade items arrive without a
re-export edit. Both modules share the identical std feature gate.

cargo clippy --lib -D warnings green; cargo fmt --check clean.

Co-Authored-By: Claude <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01K3RyLEbuNSHxxB3NTTrGki
  • Loading branch information
claude committed Aug 5, 2026
commit f66449aab096069f20ced630357da0bd686889cf
9 changes: 9 additions & 0 deletions src/simd.rs
Original file line number Diff line number Diff line change
Expand Up @@ -623,6 +623,15 @@ pub use crate::hpc::cam_pq::{kmeans, squared_l2};

pub use crate::hpc::heel_f64x8::cosine_f32_to_f64_simd;

// The Belichtungsmesser — banded multi-resolution cascade search
// (`Cascade::expose(distance) → Band`, `recalibrate(ShiftAlert)`,
// `PackedDatabase`, `adaptive_resolution`). Trampolined as a whole module so
// consumers under the "all SIMD from `ndarray::simd`" invariant reach the
// exposure-meter surface as `ndarray::simd::cascade::*` without dipping into
// `crate::hpc` directly. Module alias, not an item list — new cascade items
// arrive here without a re-export edit. Same `std` gate as this module.
pub use crate::hpc::cascade;

// Dispatched integer matmul — the polyfill entry for batched int8 scoring.
// `matmul_i8_to_i32` runtime-selects AMX `TDPBUSD` tiles (byte-asm, 16384
// MAC/instr, Sapphire Rapids+) → AVX-512 VPDPBUSD → AVX-VNNI → scalar, and
Expand Down
Loading