gko::batch#
Batched linear algebra: solve many small independent systems at once on the same executor, sharing kernel launches and data movement to keep accelerators saturated. Every type in this namespace has the uniform-batch constraint — all items share the same dimensions and the same sparsity pattern (CSR/ELL store the column indices and row pointers once, common across the whole batch).
For background on when batched solvers help, see the Batched concept page.
Right-hand sides and matrices#
MultiVector— the right-hand-side container: one dense block per batch item, all sharing the same shape.matrix::Csr— batched compressed sparse row.matrix::Dense— batched column-major dense.matrix::Ell— batched equal-length-rows.matrix::Identity— batched identity LinOp.
Solvers#
solver::Cg— batched conjugate gradient (SPD).solver::Bicgstab— batched stabilised biconjugate gradient (non-symmetric).solver::BatchSolver— common runtime setters (tolerance, max-iterations, preconditioner) shared by every batched solver.
Preconditioners#
preconditioner::Jacobi— batched block-Jacobi.
Loggers#
log::BatchConvergence— per-batch-item iteration count and residual norm; the batched equivalent ofgko::log::Convergence.