Trueno Sparse: Sparse matrix formats and operations
Provides CSR, COO, and BSR sparse matrix formats with SIMD-accelerated SpMV (sparse matrix-vector multiply) and SpMM (sparse matrix-dense matrix multiply).
Design
- Provable contracts: Format invariants validated at construction time
- Backward error bounded: Numerical accuracy follows LAProof bounds
- SIMD dispatch: Scalar → AVX2 → AVX-512 runtime selection
- GPU ready: Formats are GPU-transfer-friendly (contiguous arrays)
Quick Start
use ;
// Build from COO (triplets)
let coo = new.unwrap;
let csr = from_coo;
// SpMV: y = A * x
let x = vec!;
let mut y = vec!;
csr.spmv;
assert!;
assert!;
assert!;
References
- Merrill & Garland, "Merge-Based Parallel SpMV", PPoPP 2016
- LAProof (Princeton): formal backward error bounds for CSR SpMV