Expand description
Sparse CSR × CSR matrix multiplication with fused top-n selection.
Rust port of sparse_dot_topn.
The default driver column-chunks B so the dense sums accumulator and the streamed
B fragments stay resident in L1/L2 cache — this is the dominant performance lever
for very large, very sparse inputs and is built in, not bolted on.
Re-exports§
pub use crate::chunked::default_chunk_cols;pub use crate::chunked::sp_matmul_topn_chunked;pub use crate::chunked::AccumMode;pub use crate::chunked::BProjection;pub use crate::csr::CsrMatrix;pub use crate::csr::CsrView;pub use crate::index::Index;pub use crate::matmul::sp_matmul;pub use crate::matmul_topn::sp_matmul_topn;pub use crate::matmul_topn::SortMode;pub use crate::matmul_topn::TopNOptions;pub use crate::scalar::Scalar;pub use crate::tiled::TiledB;pub use crate::zip::zip_sp_matmul_topn;
Modules§
- chunked
- Column-chunked driver — the cache-blocking pillar.
- csr
- CSR matrix types — borrowed view and owned matrix.
- index
Indextrait — the integer type of theindptr/indicesarrays.- matmul
sp_matmul— sparse CSR × CSR multiplication without top-n selection.- matmul_
topn sp_matmul_topn— sparse CSR × CSR multiplication keeping top-n per row.- maxheap
- Bounded max-heap for top-n selection per row.
- parallel
- Rayon-backed parallel driver. Feature
rayon(default-on). - scalar
Scalartrait — the element type of the matrices.- simd
- Runtime CPU-feature detection for the x86-64 kernel clones.
- tiled
- Tiled-CSR representation of B (plan O3, “Strategie C”).
- zip
zip_sp_matmul_topn— combine top-n sub-matrices produced by independent chunks.