Library coverage
All eleven adapters below compile and have passed 429 baseline correctness cases twice plus 66 targeted pivot/sign cases. The expanded JMH comparison reruns all adapters with identical harness settings. See completed results.
Distribution and backend distinctions
- The old
org.netlib:jlapack:0.8dependency remains unavailable from Maven Central. The included replacement is explicitly identified asnet.sourceforge.f2j:arpack_combined_all:0.1, usingDgemmand translated LAPACK routines. It is not presented as the same artifact or release. - MTJ is measured with
F2jBLAS,F2jLAPACKandF2jARPACKforced by JVM properties. It is not a native-accelerated MTJ result. - jblas loads its bundled native implementation successfully. Native thread environment variables request one thread, but native worker counts have not been independently audited.
- UJMP's optional external Commons Math, EJML, jblas, MTJ, ojAlgo and Parallel Colt backends are disabled, preventing silent delegation to a different measured library.
- Parallel Colt, ojAlgo and UJMP receive explicit one-thread settings, in addition to the common one-worker JMH configuration.
The original four-library report remains available as a separate historical run. Its omissions were integration scope decisions, not evidence that other libraries could not run.
Current version selection
The latest comparison upgrades the primary Commons adapter to Commons Math 4.0-SNAPSHOT, Parallel Colt to 0.11.4 from its upstream release tag, and NM Dev to the validated 1.2.6 release JAR. See the complete version audit for all eleven libraries, release-versus-snapshot distinctions and exact checksums. Version labels below are read from the selected run.
Measured backend records
| Library | Measured version / backend |
|---|---|
| NMDEV | NM Dev 1.2.6 — Validated combined obfuscated 1.2.6 JAR; exact hash and CI source in validated-nmdev-artifact.json |
| EJML | EJML 0.46.1 — EJML 0.46.1 |
| COMMONS | Commons Math 4.0-SNAPSHOT (20261018.085925-1575) — Apache Commons Math4 legacy linear algebra; pinned official development snapshot 4.0-20261018.085925-1575 |
| JAMA | JAMA 1.0.3 — JAMA 1.0.3 |
| COLT | Colt 1.2.0 — Colt 1.2.0 |
| PARALLEL_COLT | Parallel Colt 0.11.4 (upstream tag build) — Upstream 0.11.4 release tag compiled without algorithm modifications; ConcurrencyUtils threads=1 |
| JBLAS | jblas 1.2.5 (native) — Bundled native libjblas; requested native environment threads=1; actual native worker counts not independently audited |
| F2J_LAPACK | F2J LAPACK/BLAS 0.1 — Direct translated Java BLAS/LAPACK distribution arpack_combined_all0.1; replacement distribution, not JLAPACK0.8 |
| MTJ | MTJ 1.0.4 (F2J) — F2jBLAS/F2jLAPACK/F2jARPACK explicitly forced by fork flags |
| OJALGO | ojAlgo 57.5.0 — R064Store/decomposition factories; library thread limit=1; deferred scalar results materialized inside timing |
| UJMP | UJMP 0.3.0 (core) — Core algorithms only; external backends disabled; threads=1 |