OpenSolvers explores how open-source scientific software runs on real hardware — starting with RISC-V boards and the tools that make that practical (EESSI, OpenBLAS, and friends). This site documents what we learn along the way.
We benchmark scientific libraries and applications on consumer RISC-V boards through the EESSI stack — from BLAS kernels up to full app runs — swapping fixed OpenBLAS builds via FlexiBLAS without rebuilding downstream code.
Recent highlights on the Orange Pi RV2 (SpaceMiT X60, RVV): fixing an OpenBLAS gemv_n bug restores correctness across BLAS, LAPACK, ELPA, HPL, and Quantum ESPRESSO — with patched RVV reaching 10.53 GFLOP/s on Linpack, 1.58× on a dense eigensolve, and 1.31× on a 64-atom Si DFT SCF.
Library-level probes — performance and numerical correctness:
- BLAS — OpenBLAS improvements (U74 kernel, X60
gemv_nfix) - DGEMM —
bench_dgemm+difftestperformance and correctness probes - NumPy —
bench_blas.pyDGEMM andeigvalshthrough the SciPy stack - LAPACK — LAPACK path via NumPy
eigvalsh - ELPA — dense eigensolver (CP2K / VASP class workloads)
End-to-end application benchmarks on the same boards and EESSI toolchain:
- HPL — High Performance Linpack; cross-board summary and A/B configs from opensolvers/benchmarks
- Quantum ESPRESSO — plane-wave DFT SCF (
pw.x); whole-application BLAS backend A/B with per-routine timers
- StarFive VisionFive 2 — JH7110 SoC, 4× SiFive U74 (
rv64gc). U74 OpenBLAS tuning: HPL 3.13 → 5.28 GFLOP/s. - Orange Pi RV2 — SpaceMiT K1, 8× X60 (RVV). Fixed OpenBLAS: HPL FAILED (
nan) → 10.53 GFLOP/s; ELPA 34.81 s (vs 54.92 s scalar). - Banana Pi F3 — same K1 / X60 SoC, 3.7 GB RAM. HPL FAILED (
nan) → 11.52 GFLOP/s; NumPy DGEMM up to 17.51 GFLOP/s on patched RVV.
Use the menu above to jump to a board, app, or scientific lib page.