Rust implementation of various sparse linear solvers, with pedagogical and research purposes in mind. Still working in progress ...
Iterative solvers
- MINRES
- BiCGStab
- CSMINRES: MINRES for symmetric complex systems
When using MKL (by enabling mkl feature), test to use the features between mkl-static-lp64-iomp and mkl-static-lp64-seq.
When using rayon (by enabling parallel feature), test the number of threads enabled.
-Benchmark
cargo bench --bench bench_bicg_stab
When MKL with iomp is enabled, you might want to use
RUSTFLAGS="-L /opt/intel/lib/intel64" cargo bench --bench mkl_bicgstab