Eigen vs. BLAS/LAPACK libraries, Intel Xeon Gold 6444Y (September 2026)
Eigen’s dense kernels measured on a bare-metal Intel Xeon Gold 6444Y, using one thread and AVX-512. The twelve operations and all 874 float/double operation-shape cells match the Zen 5 AVX-512 page. OpenBLAS and Intel oneMKL provide both BLAS and LAPACK comparisons; upstream BLIS provides the six BLAS comparisons.
All 30 operation/library runs completed with ten samples per measured cell and no reported validation errors.
Conditions
| CPU | Intel Xeon Gold 6444Y, one socket, 16 cores / 32 threads; L1d 48 KiB/core, L2 2 MiB/core, shared L3 45 MiB |
| OS | Ubuntu 24.04.5 LTS, bare-metal Linux 6.17.0-35-generic |
| Compiler | GCC 13.3.0, -O3 -DNDEBUG -mavx512dq -mfma, C++17 |
| Eigen | Upstream master ab4f7316d, fetched before building; the Eigen/ tree is unchanged. No external BLAS and no OpenMP in the Eigen arm |
| Harness | MR !2903 at 778e20997, applied as 11cf0c289, plus the untimed DOT validation correction described below (4e0c35ecb). The first two AXPY runs precede that correction; their kernels and validation are unaffected |
| OpenBLAS | OpenBLAS 0.3.26 NO_LAPACKE DYNAMIC_ARCH NO_AFFINITY SapphireRapids MAX_THREADS=64; LP64 pthread build, one thread; bundled LAPACK |
| Intel oneMKL | Intel(R) oneAPI Math Kernel Library Version 2025.3-Product Build 20251007 for Intel(R) 64 architecture applications; sequential LP64, native dispatch |
| BLIS | 2.1; upstream release 2.1, sequential skx AVX-512 configuration; BLAS only |
| Threads and affinity | All library thread caps set to 1; benchmark process pinned to one logical CPU, with its SMT sibling unused |
| Isolation and frequency | Exclusive node allocation; performance governor; frequency not locked |
| Method | Google Benchmark 1.8.3, built from source in Release mode; ten repetitions of at least 0.2 seconds of CPU time, median rate per cell |
| Benchmark runtime | 30 completed runs, 312.6 minutes total elapsed runtime, excluding builds; 2026-09-21 08:57 PM PDT to 2026-09-22 03:10 AM PDT |
Reading the rates. The harness uses Google Benchmark’s default CPU timer for its GFLOP/s counters; it also retains wall times in the downloadable data. Both implementations use the same nominal flop count, operand shapes, input distribution, and timing protocol. Each benchmark invocation generates fresh random operands outside the timed loop, including between repetitions. Reference results are validated outside the timed loop. Small cells include API and dispatch overhead; Eigen can inline its operation.
Each Eigen/library ratio is formed from the two median rates in the same binary and session. The common Eigen line and table column show the median over its separately measured library builds; the shaded band is the min–max range of those medians. Consequently the common Eigen column divided by a library column need not exactly equal the paired ratio. Within-run variation is summarized below.
Cache markers show where the inputs and outputs of one call fill L1d, L2 or L3; they exclude solver workspace and the harness’s additional copies. Eigenvalue and SVD rates use classical algorithm counts, so they are nominal GFLOP/s rather than executed-instruction throughput.
AXPY
y += alpha * x against ?axpy, alpha = 0.75; (2n) flops. Vector lengths extend through the cache levels into DRAM.


DOT
x.dot(y) against ?dot; (2n) flops. Float and double only.


GEMV
y.noalias() += A * x against ?gemv, column-major, no transposition; (2mn) flops. Square, short-fat and tall-skinny operands.




GEMM
C.noalias() += A * B against ?gemm, column-major, no transposition; (2mnk) flops. Square sizes through 4097, tall-skinny sweeps and other rectangular shapes.






TRSM
A.triangularView<Lower>().solveInPlace(X) against ?trsm, left, lower, no transposition, non-unit diagonal; (m(m+1)n) flops. Both arms time one copy of the right-hand side.






SYRK
C.selfadjointView<Lower>().rankUpdate(A) against ?syrk, lower triangle, no transposition; (n(n+1)k) flops.




POTRF
LLT<Ref<Matrix>> against ?potrf, in-place lower Cholesky factorization. The harness’s shared nominal count is (n(n-1)(n-2)/3 + 2n(n-1)), asymptotically (n^3/3) flops. Both arms time one operand copy.


GETRF
PartialPivLU<Ref<Matrix>> against ?getrf, in-place LU with partial pivoting; (2n^3/3) flops. Both arms time one operand copy.


GEQRF
HouseholderQR<Ref<Matrix>> against ?geqrf, in-place Householder QR with (m \ge n); (2mn^2 - 2n^3/3) flops. Both arms time one operand copy.




SYEV
SelfAdjointEigenSolver with eigenvectors against ?syev with jobz = 'V', lower triangle; (9n^3) nominal flops. Square sizes through 2048.


GESDD
BDCSVD<Matrix, ComputeThinU | ComputeThinV> against ?gesdd with jobz = 'S'; divide and conquer, with thin singular vectors on both sides. (14mn^2 + 8n^3) nominal flops; square sizes through 2048 plus tall-skinny sweeps.




GEEV
EigenSolver with eigenvectors against ?geev with jobvr = 'V', for a dense random nonsymmetric matrix; (25n^3) nominal flops. Square sizes through 1024.


Summary
Geometric mean of paired Eigen/library rate ratios over square shapes in each size band. Above 1, Eigen is faster.
| Operation | Scalar | Library | n ≤ 16 | 24–128 | 192–1024 | 1536–16384 | > 16384 |
|---|---|---|---|---|---|---|---|
| AXPY | float | OpenBLAS | 3.03 | 2.85 | 1.40 | 1.05 | 1.00 |
| AXPY | float | Intel oneMKL | 2.86 | 2.31 | 1.40 | 1.02 | 1.00 |
| AXPY | float | BLIS | 14.01 | 9.40 | 2.58 | 1.33 | 0.98 |
| AXPY | double | OpenBLAS | 2.53 | 1.98 | 1.29 | 1.02 | 1.00 |
| AXPY | double | Intel oneMKL | 2.88 | 1.76 | 0.77 | 0.92 | 0.99 |
| AXPY | double | BLIS | 13.82 | 8.86 | 2.93 | 1.32 | 0.99 |
| DOT | float | OpenBLAS | 3.49 | 2.66 | 1.18 | 1.02 | 0.99 |
| DOT | float | Intel oneMKL | 4.25 | 2.70 | 1.30 | 1.08 | 1.01 |
| DOT | float | BLIS | 24.89 | 13.52 | 3.96 | 1.72 | 1.08 |
| DOT | double | OpenBLAS | 4.90 | 2.44 | 1.10 | 1.03 | 1.00 |
| DOT | double | Intel oneMKL | 4.99 | 2.33 | 1.17 | 1.06 | 1.00 |
| DOT | double | BLIS | 28.11 | 10.76 | 2.79 | 1.49 | 1.05 |
| GEMV | float | OpenBLAS | 1.39 | 1.39 | 1.05 | 1.06 | – |
| GEMV | float | Intel oneMKL | 2.61 | 1.52 | 1.05 | 1.06 | – |
| GEMV | float | BLIS | 7.07 | 2.71 | 1.16 | 1.03 | – |
| GEMV | double | OpenBLAS | 2.23 | 1.63 | 1.08 | 1.07 | – |
| GEMV | double | Intel oneMKL | 2.98 | 1.48 | 0.98 | 1.04 | – |
| GEMV | double | BLIS | 7.70 | 2.28 | 1.12 | 1.03 | – |
| GEMM | float | OpenBLAS | 1.25 | 0.86 | 1.02 | 0.97 | – |
| GEMM | float | Intel oneMKL | 2.57 | 0.88 | 0.99 | 0.96 | – |
| GEMM | float | BLIS | 65.54 | 3.19 | 1.09 | 1.00 | – |
| GEMM | double | OpenBLAS | 1.11 | 0.85 | 1.07 | 0.94 | – |
| GEMM | double | Intel oneMKL | 2.21 | 0.84 | 0.98 | 0.93 | – |
| GEMM | double | BLIS | 61.09 | 2.35 | 1.04 | 0.96 | – |
| TRSM | float | OpenBLAS | 1.22 | 3.78 | 1.96 | 1.13 | – |
| TRSM | float | Intel oneMKL | 1.34 | 1.12 | 0.90 | 0.88 | – |
| TRSM | float | BLIS | 38.92 | 12.21 | 3.47 | 1.45 | – |
| TRSM | double | OpenBLAS | 1.48 | 3.60 | 2.19 | 1.23 | – |
| TRSM | double | Intel oneMKL | 1.45 | 0.81 | 0.77 | 0.88 | – |
| TRSM | double | BLIS | 25.21 | 6.26 | 1.78 | 1.13 | – |
| SYRK | float | OpenBLAS | 0.62 | 0.98 | 1.01 | 0.98 | – |
| SYRK | float | Intel oneMKL | 1.22 | 1.01 | 0.98 | 0.95 | – |
| SYRK | float | BLIS | 17.44 | 3.09 | 1.08 | 0.99 | – |
| SYRK | double | OpenBLAS | 0.88 | 1.24 | 1.08 | 0.88 | – |
| SYRK | double | Intel oneMKL | 1.59 | 1.02 | 0.98 | 0.88 | – |
| SYRK | double | BLIS | 21.77 | 2.43 | 1.05 | 0.91 | – |
| POTRF | float | OpenBLAS | 1.55 | 1.12 | 1.49 | 1.18 | – |
| POTRF | float | Intel oneMKL | 1.06 | 2.15 | 0.98 | 0.99 | – |
| POTRF | double | OpenBLAS | 1.38 | 1.25 | 1.50 | 1.25 | – |
| POTRF | double | Intel oneMKL | 1.08 | 1.71 | 0.99 | 0.93 | – |
| GETRF | float | OpenBLAS | 1.93 | 1.43 | 1.31 | 1.00 | – |
| GETRF | float | Intel oneMKL | 1.00 | 1.33 | 0.87 | 0.87 | – |
| GETRF | double | OpenBLAS | 1.77 | 1.53 | 1.34 | 0.99 | – |
| GETRF | double | Intel oneMKL | 0.97 | 1.38 | 1.02 | 0.93 | – |
| GEQRF | float | OpenBLAS | 0.79 | 1.09 | 1.15 | 1.22 | – |
| GEQRF | float | Intel oneMKL | 0.40 | 0.93 | 0.96 | 0.94 | – |
| GEQRF | double | OpenBLAS | 0.73 | 0.93 | 1.03 | 0.99 | – |
| GEQRF | double | Intel oneMKL | 0.35 | 0.64 | 0.84 | 0.81 | – |
| SYEV | float | OpenBLAS | 1.51 | 2.02 | 3.72 | 2.99 | – |
| SYEV | float | Intel oneMKL | 1.44 | 1.14 | 1.02 | 0.57 | – |
| SYEV | double | OpenBLAS | 1.36 | 1.77 | 2.33 | 1.79 | – |
| SYEV | double | Intel oneMKL | 1.29 | 0.95 | 0.66 | 0.37 | – |
| GESDD | float | OpenBLAS | 1.73 | 0.72 | 0.87 | 0.96 | – |
| GESDD | float | Intel oneMKL | 1.63 | 0.64 | 0.81 | 0.92 | – |
| GESDD | double | OpenBLAS | 1.34 | 0.60 | 0.80 | 0.90 | – |
| GESDD | double | Intel oneMKL | 1.31 | 0.53 | 0.69 | 0.88 | – |
| GEEV | float | OpenBLAS | 2.14 | 1.62 | 0.48 | – | – |
| GEEV | float | Intel oneMKL | 2.01 | 1.44 | 0.43 | – | – |
| GEEV | double | OpenBLAS | 2.13 | 1.52 | 0.45 | – | – |
| GEEV | double | Intel oneMKL | 1.13 | 1.17 | 0.41 | – | – |
Variability
Relative IQR is the interquartile range of the ten rates divided by their median. The table pools float and double; Eigen counts include its repeated measurements in each library build. It summarizes dispersion across the measured cells, not a confidence interval. Repetitions use freshly generated random inputs, so the spread includes input variation as well as timing noise.
| Operation | Implementation | Measured cells | Median relative IQR | 90th percentile relative IQR | Maximum relative IQR |
|---|---|---|---|---|---|
| AXPY | eigen | 258 | 0.27% | 2.42% | 29.15% |
| AXPY | openblas | 86 | 0.29% | 1.37% | 8.10% |
| AXPY | mkl | 86 | 0.31% | 0.65% | 42.73% |
| AXPY | blis | 86 | 0.63% | 1.54% | 10.21% |
| DOT | eigen | 258 | 0.29% | 0.89% | 4.08% |
| DOT | openblas | 86 | 0.36% | 1.76% | 43.56% |
| DOT | mkl | 86 | 0.39% | 0.86% | 4.28% |
| DOT | blis | 86 | 0.51% | 1.29% | 2.96% |
| GEMV | eigen | 228 | 0.27% | 0.77% | 2.82% |
| GEMV | openblas | 76 | 0.26% | 1.01% | 3.27% |
| GEMV | mkl | 76 | 0.23% | 0.89% | 1.92% |
| GEMV | blis | 76 | 0.34% | 0.92% | 2.36% |
| GEMM | eigen | 300 | 0.10% | 0.36% | 1.88% |
| GEMM | openblas | 100 | 0.06% | 0.43% | 1.02% |
| GEMM | mkl | 100 | 0.07% | 0.41% | 2.64% |
| GEMM | blis | 100 | 0.13% | 0.36% | 0.92% |
| TRSM | eigen | 240 | 0.19% | 0.74% | 4.58% |
| TRSM | openblas | 80 | 0.30% | 0.71% | 2.53% |
| TRSM | mkl | 80 | 0.14% | 0.39% | 2.87% |
| TRSM | blis | 80 | 0.30% | 1.02% | 2.34% |
| SYRK | eigen | 222 | 0.14% | 0.54% | 1.82% |
| SYRK | openblas | 74 | 0.11% | 0.48% | 0.71% |
| SYRK | mkl | 74 | 0.15% | 0.45% | 1.52% |
| SYRK | blis | 74 | 0.17% | 0.57% | 1.12% |
| POTRF | eigen | 120 | 0.15% | 0.64% | 2.47% |
| POTRF | openblas | 60 | 0.21% | 0.60% | 14.86% |
| POTRF | mkl | 60 | 0.16% | 0.89% | 1.85% |
| GETRF | eigen | 120 | 1.56% | 5.29% | 10.38% |
| GETRF | openblas | 60 | 0.38% | 2.51% | 8.59% |
| GETRF | mkl | 60 | 0.47% | 3.26% | 7.48% |
| GEQRF | eigen | 164 | 0.18% | 0.45% | 1.99% |
| GEQRF | openblas | 82 | 0.15% | 0.47% | 1.61% |
| GEQRF | mkl | 82 | 0.20% | 0.71% | 2.21% |
| SYEV | eigen | 108 | 1.01% | 6.53% | 14.16% |
| SYEV | openblas | 54 | 4.44% | 9.89% | 14.71% |
| SYEV | mkl | 54 | 4.92% | 30.36% | 47.16% |
| GESDD | eigen | 132 | 1.05% | 5.52% | 13.97% |
| GESDD | openblas | 66 | 0.41% | 4.80% | 9.21% |
| GESDD | mkl | 66 | 0.45% | 5.16% | 12.54% |
| GEEV | eigen | 100 | 4.20% | 10.77% | 22.23% |
| GEEV | openblas | 50 | 3.27% | 8.02% | 17.82% |
| GEEV | mkl | 50 | 4.51% | 10.86% | 23.35% |
The same Eigen cells are also measured in separately linked library builds. Their relative range is (maximum median − minimum median) / median of medians. This includes any differences between binaries and sessions, and is not a confidence interval. A small within-run IQR does not establish agreement between builds.
| Operation | Scalar | Cells in multiple builds | Median relative range | 90th percentile relative range | Maximum relative range |
|---|---|---|---|---|---|
| AXPY | float | 43 | 9.45% | 36.90% | 68.51% |
| AXPY | double | 43 | 5.18% | 41.48% | 67.91% |
| DOT | float | 43 | 0.75% | 5.90% | 22.97% |
| DOT | double | 43 | 0.67% | 4.31% | 29.30% |
| GEMV | float | 38 | 0.68% | 8.40% | 18.81% |
| GEMV | double | 38 | 0.59% | 2.12% | 13.90% |
| GEMM | float | 50 | 0.26% | 1.21% | 2.84% |
| GEMM | double | 50 | 0.37% | 1.31% | 12.49% |
| TRSM | float | 40 | 0.94% | 2.91% | 12.73% |
| TRSM | double | 40 | 1.06% | 4.48% | 8.58% |
| SYRK | float | 37 | 0.26% | 1.42% | 5.31% |
| SYRK | double | 37 | 0.42% | 0.97% | 2.35% |
| POTRF | float | 30 | 0.27% | 1.46% | 6.41% |
| POTRF | double | 30 | 0.22% | 0.71% | 16.10% |
| GETRF | float | 30 | 0.81% | 6.51% | 10.30% |
| GETRF | double | 30 | 1.68% | 4.06% | 8.05% |
| GEQRF | float | 41 | 0.31% | 1.19% | 2.60% |
| GEQRF | double | 41 | 0.37% | 1.82% | 2.78% |
| SYEV | float | 27 | 0.73% | 2.08% | 6.94% |
| SYEV | double | 27 | 0.67% | 2.06% | 13.87% |
| GESDD | float | 33 | 0.44% | 1.19% | 1.49% |
| GESDD | double | 33 | 0.69% | 1.49% | 2.63% |
| GEEV | float | 25 | 1.59% | 4.22% | 7.20% |
| GEEV | double | 25 | 1.31% | 6.30% | 9.69% |
Caveats
- Frequency is not locked; turbo, thermal state and background system services can affect timings. Differences comparable to the observed dispersion are inconclusive.
- These are single-threaded measurements on one processor and one compiler configuration. Absolute rates should not be treated as a controlled comparison with the Zen 5 host.
- BLIS provides no LAPACK arm here; those entries are explicitly outside its measured scope.
- Eigen’s AXPY rates differ substantially between library builds at some cache-resident sizes. The cause was not established; consider paired ratios together with the ranges between builds.
- Several single-precision oneMKL SYEV cells have large within-run variation. See the per-implementation IQR table and raw samples.
Full tables
The Eigen column is pooled across builds; ratios retain the within-build comparison.
AXPY float
| n | Eigen GFLOP/s | OpenBLAS GFLOP/s | Eigen ÷ OpenBLAS | Intel oneMKL GFLOP/s | Eigen ÷ Intel oneMKL | BLIS GFLOP/s | Eigen ÷ BLIS |
|---|---|---|---|---|---|---|---|
| 2 | 1.8 | 0.7 | 2.40 | 0.5 | 3.24 | 0.1 | 16.20 |
| 3 | 2.7 | 1.1 | 2.51 | 0.8 | 3.26 | 0.2 | 15.35 |
| 4 | 3.1 | 1.3 | 2.45 | 1.1 | 2.84 | 0.2 | 14.98 |
| 6 | 4.4 | 1.6 | 2.72 | 1.6 | 2.65 | 0.3 | 13.03 |
| 8 | 6.4 | 1.9 | 3.39 | 2.2 | 2.90 | 0.5 | 13.37 |
| 12 | 9.0 | 2.3 | 3.92 | 3.3 | 2.71 | 0.7 | 13.32 |
| 16 | 11.6 | 2.6 | 4.45 | 4.6 | 2.53 | 0.9 | 12.29 |
| 24 | 17.3 | 3.0 | 5.86 | 6.5 | 2.67 | 1.4 | 11.63 |
| 32 | 23.1 | 10.0 | 2.31 | 9.0 | 2.56 | 1.9 | 12.12 |
| 48 | 33.6 | 6.8 | 4.97 | 13.6 | 2.48 | 2.8 | 11.50 |
| 64 | 43.4 | 19.6 | 2.22 | 17.4 | 2.50 | 3.8 | 9.72 |
| 96 | 57.4 | 23.2 | 2.47 | 26.1 | 2.23 | 5.6 | 9.05 |
| 100 | 45.1 | 21.9 | 2.08 | 26.3 | 1.71 | 5.6 | 6.50 |
| 128 | 67.5 | 35.4 | 1.99 | 30.6 | 2.21 | 7.4 | 6.97 |
| 192 | 74.1 | 42.0 | 1.78 | 41.3 | 1.79 | 10.6 | 5.65 |
| 256 | 68.7 | 53.5 | 1.29 | 50.9 | 1.35 | 13.7 | 4.25 |
| 384 | 101.2 | 65.9 | 1.54 | 61.6 | 1.64 | 19.2 | 3.35 |
| 512 | 103.8 | 70.8 | 1.47 | 69.9 | 1.49 | 23.1 | 2.83 |
| 768 | 106.8 | 79.5 | 1.34 | 79.6 | 1.34 | 33.3 | 2.02 |
| 1000 | 104.4 | 77.9 | 1.34 | 84.3 | 1.24 | 38.8 | 1.55 |
| 1001 | 102.9 | 77.7 | 1.34 | 84.5 | 1.22 | 38.4 | 1.51 |
| 1024 | 104.7 | 86.0 | 1.22 | 85.0 | 1.23 | 38.2 | 1.82 |
| 1536 | 108.2 | 92.3 | 1.17 | 92.3 | 1.17 | 44.9 | 1.67 |
| 2048 | 104.8 | 95.9 | 1.09 | 95.9 | 1.10 | 48.4 | 1.49 |
| 3072 | 105.1 | 94.3 | 1.12 | 100.4 | 1.05 | 53.2 | 1.32 |
| 4096 | 101.7 | 100.9 | 1.01 | 102.7 | 0.99 | 56.1 | 1.48 |
| 6144 | 104.3 | 95.6 | 1.09 | 96.1 | 1.10 | 44.6 | 1.87 |
| 8192 | 28.5 | 26.4 | 1.01 | 36.8 | 0.77 | 30.6 | 1.51 |
| 10000 | 26.6 | 26.2 | 1.02 | 26.4 | 1.01 | 26.7 | 1.00 |
| 12288 | 26.6 | 23.8 | 0.99 | 26.4 | 1.01 | 26.8 | 0.99 |
| 16384 | 26.5 | 24.9 | 0.97 | 26.4 | 1.01 | 26.9 | 0.99 |
| 32768 | 26.6 | 26.5 | 1.00 | 26.5 | 1.00 | 27.1 | 0.98 |
| 65536 | 26.6 | 26.4 | 1.01 | 26.6 | 1.00 | 27.2 | 0.96 |
| 100000 | 26.7 | 26.7 | 1.00 | 26.6 | 1.00 | 27.3 | 0.97 |
| 131072 | 26.1 | 26.3 | 0.99 | 26.6 | 0.98 | 27.0 | 0.96 |
| 262144 | 15.9 | 16.1 | 1.05 | 15.5 | 1.03 | 16.3 | 0.94 |
| 524288 | 9.4 | 9.5 | 0.99 | 9.2 | 1.00 | 9.7 | 0.97 |
| 1000000 | 9.3 | 9.4 | 1.00 | 9.2 | 1.00 | 9.6 | 0.98 |
| 1048576 | 9.4 | 9.4 | 1.00 | 9.2 | 1.00 | 9.5 | 0.98 |
| 2097152 | 9.4 | 9.4 | 1.00 | 9.2 | 0.99 | 9.5 | 0.98 |
| 4194304 | 9.2 | 9.2 | 1.00 | 9.1 | 0.99 | 9.3 | 0.99 |
| 8388608 | 7.6 | 7.6 | 0.99 | 7.7 | 0.99 | 7.5 | 1.02 |
| 16777216 | 6.2 | 6.2 | 1.00 | 6.3 | 0.99 | 6.1 | 1.01 |
AXPY double
| n | Eigen GFLOP/s | OpenBLAS GFLOP/s | Eigen ÷ OpenBLAS | Intel oneMKL GFLOP/s | Eigen ÷ Intel oneMKL | BLIS GFLOP/s | Eigen ÷ BLIS |
|---|---|---|---|---|---|---|---|
| 2 | 1.8 | 0.7 | 2.36 | 0.6 | 2.94 | 0.1 | 15.88 |
| 3 | 2.6 | 1.1 | 2.47 | 0.8 | 3.28 | 0.2 | 16.23 |
| 4 | 3.2 | 1.3 | 2.37 | 1.2 | 2.74 | 0.2 | 13.91 |
| 6 | 4.7 | 1.8 | 2.61 | 1.6 | 2.95 | 0.3 | 14.09 |
| 8 | 5.8 | 2.2 | 2.59 | 2.1 | 2.82 | 0.5 | 12.44 |
| 12 | 8.7 | 2.7 | 3.16 | 3.2 | 2.65 | 0.7 | 12.32 |
| 16 | 11.6 | 5.1 | 2.26 | 4.1 | 2.85 | 0.9 | 12.44 |
| 24 | 17.2 | 5.0 | 3.38 | 6.1 | 2.82 | 1.4 | 12.55 |
| 32 | 21.7 | 10.4 | 2.08 | 7.5 | 2.60 | 1.9 | 11.73 |
| 48 | 29.5 | 11.6 | 2.54 | 11.1 | 2.09 | 2.8 | 10.68 |
| 64 | 32.7 | 17.8 | 1.98 | 14.3 | 1.72 | 3.7 | 8.96 |
| 96 | 37.2 | 21.5 | 1.73 | 20.0 | 1.34 | 5.2 | 7.12 |
| 100 | 33.5 | 20.9 | 1.62 | 21.4 | 1.26 | 5.4 | 6.15 |
| 128 | 33.8 | 28.0 | 1.21 | 23.7 | 1.17 | 6.8 | 6.95 |
| 192 | 50.5 | 32.3 | 1.56 | 30.0 | 0.97 | 9.7 | 5.21 |
| 256 | 51.6 | 34.8 | 1.48 | 37.5 | 0.81 | 11.6 | 4.45 |
| 384 | 53.3 | 38.2 | 1.40 | 41.1 | 0.76 | 16.8 | 3.18 |
| 512 | 52.4 | 42.6 | 1.23 | 43.6 | 0.73 | 19.4 | 2.70 |
| 768 | 54.1 | 45.0 | 1.20 | 46.2 | 0.75 | 22.3 | 2.43 |
| 1000 | 54.4 | 45.1 | 1.21 | 47.4 | 0.77 | 23.9 | 2.28 |
| 1001 | 53.9 | 44.9 | 1.20 | 47.3 | 0.63 | 23.8 | 2.26 |
| 1024 | 52.6 | 47.3 | 1.11 | 47.4 | 0.77 | 24.2 | 2.17 |
| 1536 | 52.5 | 49.2 | 1.07 | 48.7 | 0.71 | 26.5 | 1.98 |
| 2048 | 50.5 | 50.3 | 1.01 | 48.7 | 0.80 | 27.9 | 1.82 |
| 3072 | 51.9 | 47.5 | 1.09 | 48.2 | 0.83 | 22.3 | 2.34 |
| 4096 | 14.5 | 13.2 | 1.01 | 14.5 | 1.00 | 15.4 | 1.50 |
| 6144 | 13.3 | 11.9 | 0.98 | 13.2 | 1.01 | 13.4 | 0.99 |
| 8192 | 13.3 | 12.4 | 0.97 | 13.2 | 1.01 | 13.4 | 0.99 |
| 10000 | 13.3 | 13.2 | 1.01 | 13.3 | 1.00 | 13.5 | 0.99 |
| 12288 | 13.3 | 13.2 | 1.00 | 13.2 | 1.01 | 13.5 | 0.98 |
| 16384 | 13.3 | 13.3 | 1.00 | 13.2 | 1.01 | 13.5 | 0.98 |
| 32768 | 13.3 | 13.3 | 1.00 | 13.2 | 0.94 | 13.5 | 0.98 |
| 65536 | 13.2 | 13.1 | 0.99 | 13.3 | 1.00 | 13.6 | 0.97 |
| 100000 | 12.3 | 12.7 | 1.00 | 12.0 | 1.00 | 12.4 | 1.00 |
| 131072 | 8.1 | 8.0 | 1.02 | 7.8 | 1.01 | 8.4 | 0.97 |
| 262144 | 4.7 | 4.7 | 1.00 | 4.6 | 1.00 | 4.8 | 1.00 |
| 524288 | 4.7 | 4.7 | 0.99 | 4.6 | 0.99 | 4.8 | 0.98 |
| 1000000 | 4.7 | 4.7 | 1.00 | 4.6 | 1.00 | 4.8 | 0.99 |
| 1048576 | 4.7 | 4.7 | 1.00 | 4.6 | 0.99 | 4.8 | 0.98 |
| 2097152 | 4.6 | 4.6 | 0.99 | 4.5 | 0.99 | 4.7 | 0.99 |
| 4194304 | 3.8 | 3.8 | 0.99 | 3.8 | 1.01 | 3.7 | 1.02 |
| 8388608 | 3.1 | 3.1 | 0.99 | 3.1 | 0.99 | 3.1 | 1.02 |
| 16777216 | 2.8 | 2.8 | 0.99 | 2.8 | 0.99 | 2.8 | 1.01 |
DOT float
| n | Eigen GFLOP/s | OpenBLAS GFLOP/s | Eigen ÷ OpenBLAS | Intel oneMKL GFLOP/s | Eigen ÷ Intel oneMKL | BLIS GFLOP/s | Eigen ÷ BLIS |
|---|---|---|---|---|---|---|---|
| 2 | 4.0 | 1.2 | 3.41 | 0.6 | 6.43 | 0.1 | 32.02 |
| 3 | 6.0 | 1.6 | 3.79 | 0.9 | 4.98 | 0.2 | 33.33 |
| 4 | 7.4 | 1.9 | 3.95 | 1.3 | 5.11 | 0.2 | 32.74 |
| 6 | 8.1 | 2.6 | 3.10 | 1.9 | 4.13 | 0.3 | 24.00 |
| 8 | 8.0 | 3.0 | 2.66 | 2.5 | 3.30 | 0.4 | 18.61 |
| 12 | 8.8 | 3.5 | 2.54 | 3.7 | 2.26 | 0.7 | 13.17 |
| 16 | 24.1 | 4.0 | 5.97 | 4.7 | 4.97 | 0.8 | 28.80 |
| 24 | 12.7 | 4.4 | 2.78 | 7.0 | 2.17 | 1.3 | 10.04 |
| 32 | 39.6 | 12.4 | 3.20 | 9.5 | 4.15 | 1.9 | 20.50 |
| 48 | 49.7 | 9.6 | 5.16 | 14.3 | 3.46 | 2.7 | 18.74 |
| 64 | 56.1 | 22.8 | 2.46 | 18.1 | 3.07 | 3.8 | 14.87 |
| 96 | 71.8 | 33.4 | 2.15 | 28.2 | 2.42 | 5.5 | 13.11 |
| 100 | 52.0 | 29.1 | 1.79 | 28.5 | 1.96 | 5.5 | 9.52 |
| 128 | 84.2 | 38.9 | 2.17 | 36.3 | 2.31 | 7.3 | 11.54 |
| 192 | 91.1 | 52.8 | 1.73 | 49.1 | 1.86 | 10.7 | 8.20 |
| 256 | 93.7 | 63.5 | 1.47 | 58.0 | 1.58 | 13.5 | 6.97 |
| 384 | 99.3 | 82.1 | 1.21 | 70.7 | 1.41 | 20.1 | 4.93 |
| 512 | 102.4 | 94.0 | 1.09 | 75.3 | 1.34 | 25.5 | 4.05 |
| 768 | 106.2 | 99.4 | 1.06 | 85.6 | 1.25 | 34.2 | 3.11 |
| 1000 | 91.1 | 91.7 | 0.99 | 88.8 | 1.03 | 36.3 | 2.49 |
| 1001 | 89.2 | 86.7 | 1.02 | 89.0 | 1.00 | 35.9 | 2.48 |
| 1024 | 105.6 | 104.7 | 1.01 | 90.9 | 1.16 | 38.4 | 2.77 |
| 1536 | 107.6 | 100.8 | 1.07 | 96.0 | 1.12 | 44.5 | 2.42 |
| 2048 | 106.0 | 104.9 | 1.01 | 97.9 | 1.09 | 48.5 | 2.19 |
| 3072 | 107.9 | 105.5 | 1.02 | 102.8 | 1.05 | 51.8 | 2.09 |
| 4096 | 108.9 | 105.1 | 1.03 | 104.6 | 1.04 | 52.5 | 2.09 |
| 6144 | 103.6 | 98.9 | 1.05 | 83.7 | 1.26 | 48.6 | 2.08 |
| 8192 | 48.5 | 48.4 | 1.00 | 46.3 | 1.05 | 36.8 | 1.33 |
| 10000 | 48.1 | 47.0 | 1.02 | 46.5 | 1.03 | 37.2 | 1.30 |
| 12288 | 48.3 | 48.4 | 1.00 | 46.5 | 1.04 | 37.5 | 1.28 |
| 16384 | 48.2 | 48.6 | 0.99 | 46.4 | 1.03 | 38.0 | 1.27 |
| 32768 | 48.4 | 48.6 | 1.00 | 46.7 | 1.03 | 38.7 | 1.25 |
| 65536 | 48.2 | 48.4 | 1.00 | 46.8 | 1.03 | 38.9 | 1.24 |
| 100000 | 48.3 | 48.6 | 0.99 | 46.8 | 1.03 | 39.0 | 1.24 |
| 131072 | 48.2 | 48.7 | 0.99 | 46.9 | 1.03 | 39.1 | 1.24 |
| 262144 | 19.6 | 19.1 | 1.01 | 19.1 | 1.03 | 19.6 | 1.00 |
| 524288 | 10.4 | 10.4 | 1.00 | 10.5 | 1.00 | 10.4 | 1.01 |
| 1000000 | 10.4 | 10.4 | 1.00 | 10.4 | 1.00 | 10.3 | 1.01 |
| 1048576 | 10.3 | 10.4 | 1.00 | 10.4 | 1.00 | 10.3 | 1.01 |
| 2097152 | 10.3 | 10.4 | 1.00 | 10.4 | 1.00 | 10.3 | 1.01 |
| 4194304 | 10.1 | 10.1 | 1.00 | 10.1 | 0.99 | 10.0 | 1.01 |
| 8388608 | 8.1 | 8.2 | 0.98 | 8.3 | 0.97 | 7.8 | 1.04 |
| 16777216 | 6.5 | 6.6 | 0.98 | 6.7 | 0.97 | 6.4 | 1.01 |
DOT double
| n | Eigen GFLOP/s | OpenBLAS GFLOP/s | Eigen ÷ OpenBLAS | Intel oneMKL GFLOP/s | Eigen ÷ Intel oneMKL | BLIS GFLOP/s | Eigen ÷ BLIS |
|---|---|---|---|---|---|---|---|
| 2 | 5.3 | 0.9 | 5.93 | 0.6 | 6.72 | 0.1 | 42.74 |
| 3 | 6.3 | 1.1 | 5.54 | 1.0 | 6.26 | 0.2 | 35.45 |
| 4 | 7.4 | 1.5 | 5.03 | 1.3 | 5.69 | 0.2 | 32.69 |
| 6 | 8.1 | 1.9 | 4.33 | 1.9 | 4.16 | 0.3 | 24.24 |
| 8 | 13.2 | 2.4 | 5.49 | 2.3 | 5.60 | 0.4 | 29.92 |
| 12 | 11.9 | 2.6 | 4.53 | 3.4 | 3.17 | 0.7 | 18.36 |
| 16 | 20.7 | 5.4 | 3.81 | 4.8 | 4.34 | 1.0 | 21.04 |
| 24 | 26.7 | 6.0 | 4.48 | 7.4 | 3.64 | 1.4 | 19.60 |
| 32 | 29.9 | 9.7 | 3.09 | 9.1 | 3.30 | 2.0 | 15.29 |
| 48 | 35.1 | 14.8 | 2.37 | 14.2 | 2.48 | 2.9 | 12.12 |
| 64 | 44.0 | 17.2 | 2.56 | 18.1 | 2.41 | 3.8 | 11.53 |
| 96 | 47.1 | 22.7 | 2.07 | 24.5 | 1.93 | 5.7 | 8.28 |
| 100 | 40.2 | 21.6 | 1.86 | 24.4 | 1.65 | 5.5 | 7.29 |
| 128 | 47.2 | 28.6 | 1.59 | 29.0 | 1.63 | 7.2 | 6.61 |
| 192 | 48.4 | 38.3 | 1.27 | 34.4 | 1.41 | 10.3 | 4.76 |
| 256 | 50.2 | 45.1 | 1.10 | 37.5 | 1.35 | 13.3 | 3.77 |
| 384 | 52.0 | 48.5 | 1.07 | 43.1 | 1.21 | 17.2 | 3.02 |
| 512 | 52.0 | 49.8 | 1.04 | 45.5 | 1.14 | 19.7 | 2.71 |
| 768 | 52.4 | 48.7 | 1.08 | 48.2 | 1.09 | 22.8 | 2.31 |
| 1000 | 53.1 | 48.0 | 1.10 | 49.3 | 1.08 | 23.7 | 2.24 |
| 1001 | 52.6 | 48.0 | 1.09 | 49.3 | 1.07 | 23.7 | 2.22 |
| 1024 | 53.3 | 50.0 | 1.06 | 48.9 | 1.09 | 24.3 | 2.20 |
| 1536 | 53.6 | 51.3 | 1.04 | 51.5 | 1.04 | 25.8 | 2.08 |
| 2048 | 53.8 | 52.2 | 1.03 | 52.2 | 1.03 | 26.6 | 2.02 |
| 3072 | 51.7 | 47.7 | 1.08 | 40.8 | 1.30 | 24.5 | 2.08 |
| 4096 | 24.4 | 23.8 | 1.02 | 23.3 | 1.04 | 18.7 | 1.31 |
| 6144 | 24.3 | 23.8 | 1.02 | 23.2 | 1.05 | 18.8 | 1.29 |
| 8192 | 24.3 | 23.7 | 1.03 | 23.3 | 1.04 | 19.2 | 1.27 |
| 10000 | 24.1 | 24.0 | 1.01 | 23.2 | 1.03 | 19.3 | 1.25 |
| 12288 | 24.3 | 23.9 | 1.02 | 23.3 | 1.04 | 19.3 | 1.25 |
| 16384 | 24.3 | 23.9 | 1.02 | 23.4 | 1.04 | 19.5 | 1.24 |
| 32768 | 24.3 | 23.9 | 1.02 | 23.4 | 1.03 | 19.5 | 1.24 |
| 65536 | 24.2 | 24.0 | 1.01 | 23.4 | 1.03 | 19.6 | 1.24 |
| 100000 | 19.5 | 21.3 | 1.01 | 15.7 | 1.01 | 17.8 | 1.10 |
| 131072 | 9.7 | 9.5 | 1.00 | 9.8 | 0.99 | 9.8 | 1.01 |
| 262144 | 5.2 | 5.2 | 1.00 | 5.2 | 1.00 | 5.2 | 1.01 |
| 524288 | 5.2 | 5.2 | 1.00 | 5.2 | 1.00 | 5.1 | 1.01 |
| 1000000 | 5.2 | 5.2 | 1.00 | 5.2 | 1.00 | 5.1 | 1.01 |
| 1048576 | 5.2 | 5.2 | 1.00 | 5.2 | 1.00 | 5.1 | 1.01 |
| 2097152 | 5.0 | 5.1 | 1.00 | 5.1 | 0.99 | 5.0 | 1.01 |
| 4194304 | 4.0 | 4.1 | 0.98 | 4.2 | 0.97 | 3.9 | 1.04 |
| 8388608 | 3.2 | 3.3 | 0.98 | 3.3 | 0.97 | 3.2 | 1.01 |
| 16777216 | 2.9 | 3.0 | 0.98 | 3.0 | 0.98 | 2.9 | 1.00 |
GEMV float
| m×n | Eigen GFLOP/s | OpenBLAS GFLOP/s | Eigen ÷ OpenBLAS | Intel oneMKL GFLOP/s | Eigen ÷ Intel oneMKL | BLIS GFLOP/s | Eigen ÷ BLIS |
|---|---|---|---|---|---|---|---|
| 2x2 | 0.7 | 0.6 | 1.29 | 0.3 | 2.38 | 0.1 | 7.04 |
| 3x3 | 1.3 | 1.3 | 1.06 | 0.6 | 2.29 | 0.2 | 6.18 |
| 4x4 | 3.8 | 1.5 | 2.58 | 1.3 | 3.30 | 0.4 | 10.61 |
| 6x6 | 4.5 | 4.7 | 0.93 | 2.2 | 2.10 | 0.7 | 6.33 |
| 8x8 | 14.8 | 7.8 | 1.89 | 4.0 | 3.73 | 2.0 | 7.42 |
| 12x12 | 16.4 | 16.1 | 1.01 | 7.4 | 2.24 | 2.9 | 5.67 |
| 16x16 | 46.6 | 29.9 | 1.56 | 14.5 | 2.65 | 6.6 | 7.19 |
| 24x24 | 51.2 | 37.1 | 1.38 | 18.1 | 2.52 | 12.7 | 4.03 |
| 32x32 | 96.6 | 68.4 | 1.41 | 39.5 | 2.22 | 19.6 | 4.98 |
| 48x48 | 117.9 | 73.7 | 1.60 | 65.2 | 1.82 | 32.1 | 3.66 |
| 64x64 | 132.6 | 65.0 | 2.03 | 82.9 | 1.60 | 43.6 | 3.04 |
| 96x96 | 109.0 | 76.1 | 1.43 | 105.8 | 1.02 | 58.2 | 1.88 |
| 100x100 | 61.1 | 69.0 | 0.88 | 62.5 | 1.00 | 39.7 | 1.54 |
| 128x128 | 79.1 | 62.2 | 1.28 | 70.4 | 1.12 | 47.6 | 1.66 |
| 192x192 | 80.5 | 64.5 | 1.25 | 76.0 | 1.06 | 54.4 | 1.48 |
| 200x200 | 59.0 | 66.2 | 0.89 | 51.8 | 1.14 | 55.3 | 1.07 |
| 256x256 | 83.2 | 66.5 | 1.25 | 77.4 | 1.07 | 56.6 | 1.48 |
| 257x257 | 48.2 | 46.1 | 1.04 | 43.4 | 1.12 | 41.3 | 1.17 |
| 384x384 | 84.0 | 68.4 | 1.22 | 80.4 | 1.05 | 60.6 | 1.39 |
| 500x500 | 50.5 | 57.1 | 0.88 | 49.8 | 1.02 | 49.8 | 1.02 |
| 512x512 | 84.0 | 69.1 | 1.22 | 81.0 | 1.03 | 61.7 | 1.36 |
| 768x768 | 30.1 | 29.8 | 0.98 | 29.6 | 1.02 | 32.4 | 1.01 |
| 1000x1000 | 19.8 | 20.5 | 0.96 | 19.5 | 1.02 | 20.4 | 0.97 |
| 1001x1001 | 19.6 | 20.2 | 0.97 | 19.4 | 1.01 | 20.3 | 0.97 |
| 1024x1024 | 20.2 | 20.4 | 0.99 | 20.1 | 1.02 | 20.4 | 0.99 |
| 1536x1536 | 20.2 | 20.3 | 1.00 | 19.6 | 1.03 | 20.1 | 1.01 |
| 2048x2048 | 20.2 | 20.0 | 1.01 | 19.6 | 1.03 | 19.9 | 1.02 |
| 3072x3072 | 19.6 | 18.7 | 1.05 | 18.5 | 1.05 | 19.0 | 1.03 |
| 4096x4096 | 16.3 | 14.2 | 1.15 | 14.7 | 1.11 | 15.1 | 1.08 |
| 4097x4097 | 15.8 | 14.5 | 1.09 | 14.8 | 1.07 | 15.2 | 1.04 |
| 8x10000 | 28.4 | 29.4 | 0.96 | 8.8 | 3.41 | 12.9 | 2.19 |
| 100x10000 | 20.2 | 20.0 | 1.01 | 18.9 | 1.07 | 19.4 | 1.04 |
| 1000x10000 | 18.7 | 18.0 | 1.04 | 17.9 | 1.04 | 18.5 | 1.01 |
| 4000x10000 | 12.5 | 11.3 | 1.11 | 11.7 | 1.07 | 12.1 | 1.04 |
| 10000x8 | 71.2 | 71.3 | 1.01 | 74.9 | 0.94 | 63.2 | 1.13 |
| 10000x100 | 18.8 | 19.6 | 0.96 | 19.8 | 0.95 | 20.0 | 0.94 |
| 10000x1000 | 18.8 | 17.7 | 1.06 | 18.4 | 1.02 | 18.8 | 1.00 |
| 10000x4000 | 12.5 | 11.1 | 1.13 | 11.8 | 1.06 | 12.2 | 1.02 |
GEMV double
| m×n | Eigen GFLOP/s | OpenBLAS GFLOP/s | Eigen ÷ OpenBLAS | Intel oneMKL GFLOP/s | Eigen ÷ Intel oneMKL | BLIS GFLOP/s | Eigen ÷ BLIS |
|---|---|---|---|---|---|---|---|
| 2x2 | 1.1 | 0.5 | 2.43 | 0.3 | 3.52 | 0.1 | 10.79 |
| 3x3 | 1.7 | 1.0 | 1.62 | 0.7 | 2.58 | 0.2 | 7.67 |
| 4x4 | 4.3 | 1.5 | 2.76 | 1.2 | 3.50 | 0.4 | 10.39 |
| 6x6 | 7.1 | 3.0 | 2.36 | 2.3 | 2.90 | 0.8 | 8.88 |
| 8x8 | 13.2 | 5.4 | 2.44 | 4.1 | 3.22 | 1.9 | 6.89 |
| 12x12 | 16.2 | 9.7 | 1.68 | 7.6 | 2.13 | 3.3 | 4.95 |
| 16x16 | 39.7 | 15.4 | 2.59 | 12.0 | 3.33 | 6.4 | 6.19 |
| 24x24 | 59.2 | 24.3 | 2.43 | 20.0 | 2.95 | 12.1 | 4.91 |
| 32x32 | 69.5 | 31.7 | 2.19 | 28.3 | 2.46 | 17.2 | 4.04 |
| 48x48 | 60.8 | 39.8 | 1.53 | 44.2 | 1.38 | 26.5 | 2.30 |
| 64x64 | 87.1 | 45.5 | 1.92 | 56.3 | 1.55 | 30.9 | 2.81 |
| 96x96 | 43.0 | 33.0 | 1.30 | 39.9 | 1.08 | 26.3 | 1.63 |
| 100x100 | 27.5 | 22.7 | 1.21 | 29.3 | 0.93 | 26.8 | 1.03 |
| 128x128 | 41.3 | 34.0 | 1.21 | 41.2 | 1.00 | 28.0 | 1.48 |
| 192x192 | 42.0 | 34.6 | 1.21 | 42.3 | 0.99 | 30.2 | 1.40 |
| 200x200 | 41.9 | 34.8 | 1.21 | 41.5 | 1.01 | 31.0 | 1.35 |
| 256x256 | 41.9 | 34.3 | 1.22 | 42.9 | 0.98 | 31.0 | 1.35 |
| 257x257 | 23.9 | 20.0 | 1.20 | 25.8 | 0.92 | 24.0 | 1.01 |
| 384x384 | 41.2 | 34.9 | 1.17 | 43.2 | 0.95 | 32.0 | 1.28 |
| 500x500 | 20.1 | 19.4 | 1.04 | 19.2 | 0.99 | 21.2 | 0.98 |
| 512x512 | 18.4 | 18.9 | 0.97 | 17.6 | 0.98 | 19.4 | 1.02 |
| 768x768 | 10.1 | 10.3 | 0.99 | 10.1 | 1.01 | 10.1 | 1.00 |
| 1000x1000 | 9.9 | 10.2 | 0.97 | 10.0 | 0.99 | 10.0 | 0.99 |
| 1001x1001 | 9.8 | 10.0 | 0.98 | 9.8 | 0.99 | 9.9 | 0.99 |
| 1024x1024 | 10.1 | 10.2 | 0.99 | 10.0 | 1.01 | 9.9 | 1.02 |
| 1536x1536 | 10.1 | 9.7 | 1.04 | 9.9 | 1.03 | 10.0 | 1.01 |
| 2048x2048 | 10.0 | 9.5 | 1.05 | 9.3 | 1.07 | 9.7 | 1.02 |
| 3072x3072 | 7.7 | 7.0 | 1.11 | 7.2 | 1.07 | 7.3 | 1.07 |
| 4096x4096 | 6.5 | 6.0 | 1.07 | 6.2 | 1.04 | 6.2 | 1.05 |
| 4097x4097 | 6.3 | 5.9 | 1.06 | 6.2 | 1.00 | 6.2 | 1.01 |
| 8x10000 | 25.3 | 21.1 | 1.19 | 11.0 | 2.30 | 11.9 | 2.13 |
| 100x10000 | 9.8 | 9.7 | 1.01 | 9.8 | 1.01 | 9.9 | 0.99 |
| 1000x10000 | 7.5 | 7.0 | 1.07 | 7.0 | 1.07 | 7.0 | 1.06 |
| 4000x10000 | 5.7 | 5.4 | 1.06 | 5.5 | 1.03 | 5.6 | 1.03 |
| 10000x8 | 33.0 | 28.9 | 1.14 | 32.2 | 1.03 | 31.8 | 1.05 |
| 10000x100 | 8.8 | 9.3 | 0.94 | 9.5 | 0.92 | 10.0 | 0.88 |
| 10000x1000 | 7.2 | 6.8 | 1.05 | 7.1 | 1.00 | 7.2 | 0.99 |
| 10000x4000 | 5.6 | 5.4 | 1.04 | 5.5 | 1.01 | 5.6 | 1.00 |
GEMM float
| m×n×k | Eigen GFLOP/s | OpenBLAS GFLOP/s | Eigen ÷ OpenBLAS | Intel oneMKL GFLOP/s | Eigen ÷ Intel oneMKL | BLIS GFLOP/s | Eigen ÷ BLIS |
|---|---|---|---|---|---|---|---|
| 2x2x2 | 1.5 | 0.8 | 1.79 | 0.3 | 5.54 | 0.0 | 188.70 |
| 3x3x3 | 4.1 | 2.2 | 1.82 | 0.8 | 4.91 | 0.0 | 151.29 |
| 4x4x4 | 13.3 | 4.2 | 3.14 | 1.8 | 7.43 | 0.1 | 214.48 |
| 6x6x6 | 11.1 | 9.5 | 1.17 | 5.0 | 2.24 | 0.2 | 55.25 |
| 8x8x8 | 16.3 | 17.4 | 0.93 | 9.6 | 1.69 | 0.5 | 36.34 |
| 12x12x12 | 24.5 | 39.5 | 0.61 | 25.3 | 0.98 | 1.7 | 14.61 |
| 16x16x16 | 82.2 | 114.1 | 0.72 | 84.6 | 0.98 | 2.8 | 28.93 |
| 24x24x24 | 85.4 | 113.2 | 0.75 | 82.2 | 1.05 | 7.9 | 10.54 |
| 32x32x32 | 162.0 | 202.6 | 0.80 | 188.6 | 0.86 | 19.9 | 8.15 |
| 48x48x48 | 185.5 | 197.2 | 0.94 | 214.6 | 0.86 | 36.9 | 5.02 |
| 64x64x64 | 171.2 | 226.2 | 0.76 | 212.7 | 0.80 | 76.1 | 2.25 |
| 96x96x96 | 195.4 | 229.0 | 0.85 | 228.2 | 0.86 | 135.2 | 1.44 |
| 100x100x100 | 170.1 | 209.1 | 0.82 | 188.5 | 0.90 | 98.2 | 1.73 |
| 128x128x128 | 202.6 | 181.2 | 1.12 | 230.4 | 0.88 | 145.7 | 1.39 |
| 160x160x160 | 204.8 | 194.2 | 1.05 | 227.3 | 0.90 | 163.6 | 1.25 |
| 192x192x192 | 209.4 | 201.0 | 1.04 | 210.0 | 0.99 | 187.0 | 1.12 |
| 200x200x200 | 197.0 | 194.8 | 1.01 | 199.7 | 0.98 | 155.6 | 1.27 |
| 224x224x224 | 213.2 | 200.9 | 1.06 | 212.7 | 1.00 | 184.5 | 1.16 |
| 256x256x256 | 212.1 | 205.8 | 1.03 | 214.3 | 0.99 | 190.0 | 1.12 |
| 257x257x257 | 193.7 | 195.5 | 0.99 | 197.8 | 0.98 | 168.2 | 1.15 |
| 288x288x288 | 218.4 | 210.6 | 1.04 | 218.6 | 1.00 | 200.7 | 1.09 |
| 320x320x320 | 218.7 | 206.4 | 1.06 | 218.0 | 1.00 | 196.0 | 1.12 |
| 384x384x384 | 217.2 | 211.2 | 1.03 | 216.5 | 1.00 | 203.1 | 1.07 |
| 448x448x448 | 214.5 | 208.2 | 1.03 | 213.3 | 1.00 | 201.1 | 1.07 |
| 500x500x500 | 207.1 | 208.7 | 0.99 | 207.7 | 1.00 | 191.4 | 1.08 |
| 512x512x512 | 215.4 | 208.8 | 1.03 | 214.6 | 1.00 | 201.6 | 1.07 |
| 768x768x768 | 218.2 | 216.2 | 1.01 | 220.6 | 0.99 | 212.9 | 1.02 |
| 1000x1000x1000 | 217.4 | 219.9 | 0.99 | 220.3 | 0.99 | 207.1 | 1.05 |
| 1001x1001x1001 | 211.3 | 216.7 | 0.97 | 215.0 | 0.98 | 206.0 | 1.03 |
| 1024x1024x1024 | 220.1 | 218.4 | 1.01 | 221.7 | 0.99 | 213.0 | 1.03 |
| 1536x1536x1536 | 222.1 | 224.1 | 0.99 | 225.8 | 0.98 | 219.6 | 1.01 |
| 2048x2048x2048 | 222.2 | 222.7 | 1.00 | 226.9 | 0.98 | 217.3 | 1.02 |
| 3072x3072x3072 | 223.1 | 224.3 | 1.00 | 227.8 | 0.98 | 218.4 | 1.02 |
| 4096x4096x4096 | 217.8 | 225.7 | 0.97 | 225.6 | 0.96 | 215.5 | 1.01 |
| 4097x4097x4097 | 196.3 | 222.3 | 0.88 | 217.4 | 0.90 | 211.9 | 0.93 |
| 64x64x1024 | 176.3 | 156.6 | 1.13 | 216.1 | 0.81 | 110.0 | 1.60 |
| 64x1024x64 | 190.0 | 179.0 | 1.06 | 216.7 | 0.88 | 147.0 | 1.29 |
| 256x256x1024 | 208.6 | 196.2 | 1.06 | 201.1 | 1.04 | 184.1 | 1.13 |
| 1024x64x64 | 194.0 | 180.1 | 1.08 | 227.0 | 0.86 | 154.4 | 1.25 |
| 1024x256x256 | 209.2 | 205.0 | 1.02 | 215.9 | 0.97 | 198.3 | 1.06 |
| 4096x96x96 | 175.5 | 179.6 | 0.98 | 220.2 | 0.80 | 181.2 | 0.97 |
| 4096x128x128 | 197.7 | 185.0 | 1.07 | 220.9 | 0.89 | 185.6 | 1.07 |
| 4096x144x144 | 206.2 | 192.6 | 1.07 | 211.9 | 0.97 | 195.1 | 1.06 |
| 4096x160x160 | 208.5 | 194.9 | 1.07 | 202.2 | 1.03 | 188.9 | 1.11 |
| 4096x176x176 | 210.2 | 196.3 | 1.07 | 170.6 | 1.23 | 195.4 | 1.08 |
| 8192x128x128 | 197.9 | 186.4 | 1.06 | 223.0 | 0.89 | 183.9 | 1.08 |
| 10000x8x8 | 89.3 | 156.4 | 0.57 | 178.0 | 0.50 | 31.4 | 2.86 |
| 10000x100x100 | 178.1 | 184.9 | 0.97 | 219.8 | 0.81 | 169.9 | 1.05 |
| 10000x1000x1000 | 219.1 | 220.7 | 0.99 | 221.9 | 0.99 | 212.3 | 1.03 |
| 10000x4000x4000 | 218.4 | 228.6 | 0.96 | 223.0 | 0.98 | 215.4 | 1.01 |
GEMM double
| m×n×k | Eigen GFLOP/s | OpenBLAS GFLOP/s | Eigen ÷ OpenBLAS | Intel oneMKL GFLOP/s | Eigen ÷ Intel oneMKL | BLIS GFLOP/s | Eigen ÷ BLIS |
|---|---|---|---|---|---|---|---|
| 2x2x2 | 1.5 | 0.9 | 1.64 | 0.5 | 3.16 | 0.0 | 181.35 |
| 3x3x3 | 3.8 | 2.2 | 1.74 | 0.8 | 4.63 | 0.0 | 143.69 |
| 4x4x4 | 13.0 | 4.3 | 2.96 | 1.8 | 7.32 | 0.1 | 206.27 |
| 6x6x6 | 10.6 | 8.6 | 1.09 | 5.0 | 2.12 | 0.2 | 51.92 |
| 8x8x8 | 18.5 | 30.9 | 0.60 | 15.3 | 1.20 | 0.5 | 40.11 |
| 12x12x12 | 23.5 | 45.4 | 0.52 | 24.3 | 0.97 | 1.4 | 16.70 |
| 16x16x16 | 59.7 | 81.4 | 0.73 | 61.5 | 0.97 | 3.5 | 16.99 |
| 24x24x24 | 78.7 | 92.4 | 0.85 | 90.6 | 0.87 | 7.9 | 9.94 |
| 32x32x32 | 83.3 | 107.4 | 0.77 | 97.9 | 0.85 | 17.7 | 4.72 |
| 48x48x48 | 83.5 | 110.8 | 0.74 | 109.4 | 0.76 | 36.0 | 2.32 |
| 64x64x64 | 90.8 | 112.8 | 0.81 | 112.3 | 0.81 | 52.3 | 1.72 |
| 96x96x96 | 96.5 | 114.7 | 0.84 | 114.8 | 0.84 | 74.4 | 1.30 |
| 100x100x100 | 90.6 | 109.0 | 0.83 | 104.7 | 0.87 | 66.2 | 1.37 |
| 128x128x128 | 99.6 | 84.9 | 1.17 | 112.7 | 0.88 | 84.6 | 1.18 |
| 160x160x160 | 103.6 | 85.5 | 1.21 | 115.8 | 0.89 | 91.6 | 1.13 |
| 192x192x192 | 105.5 | 91.4 | 1.16 | 105.5 | 1.00 | 96.8 | 1.09 |
| 200x200x200 | 105.3 | 94.5 | 1.11 | 105.2 | 1.00 | 90.9 | 1.16 |
| 224x224x224 | 105.1 | 95.7 | 1.10 | 104.0 | 1.01 | 101.2 | 1.04 |
| 256x256x256 | 104.8 | 93.4 | 1.12 | 103.8 | 1.01 | 96.5 | 1.09 |
| 257x257x257 | 98.5 | 91.6 | 1.08 | 98.3 | 1.00 | 90.9 | 1.08 |
| 288x288x288 | 104.6 | 93.5 | 1.12 | 103.6 | 1.01 | 98.2 | 1.07 |
| 320x320x320 | 101.2 | 91.9 | 1.10 | 102.5 | 0.98 | 100.2 | 1.01 |
| 384x384x384 | 102.8 | 93.2 | 1.10 | 105.9 | 0.97 | 99.3 | 1.04 |
| 448x448x448 | 105.2 | 95.6 | 1.10 | 106.3 | 0.99 | 103.1 | 1.02 |
| 500x500x500 | 100.9 | 97.1 | 1.04 | 106.0 | 0.95 | 100.4 | 1.00 |
| 512x512x512 | 102.4 | 98.7 | 1.04 | 105.8 | 0.97 | 102.5 | 1.00 |
| 768x768x768 | 105.2 | 102.9 | 1.02 | 109.3 | 0.96 | 106.3 | 0.99 |
| 1000x1000x1000 | 108.7 | 105.2 | 1.03 | 110.9 | 0.98 | 106.3 | 1.03 |
| 1001x1001x1001 | 103.4 | 104.3 | 0.99 | 107.9 | 0.95 | 105.5 | 0.98 |
| 1024x1024x1024 | 106.1 | 105.3 | 1.01 | 110.9 | 0.96 | 106.3 | 1.00 |
| 1536x1536x1536 | 107.9 | 108.3 | 1.00 | 112.4 | 0.96 | 107.8 | 1.00 |
| 2048x2048x2048 | 107.3 | 109.4 | 0.98 | 112.6 | 0.96 | 108.0 | 0.99 |
| 3072x3072x3072 | 104.8 | 111.3 | 0.94 | 112.8 | 0.93 | 109.5 | 0.95 |
| 4096x4096x4096 | 105.1 | 112.4 | 0.94 | 112.6 | 0.93 | 108.8 | 0.97 |
| 4097x4097x4097 | 95.6 | 111.3 | 0.86 | 109.6 | 0.87 | 106.0 | 0.90 |
| 64x64x1024 | 88.8 | 66.7 | 1.33 | 116.2 | 0.76 | 67.0 | 1.33 |
| 64x1024x64 | 97.7 | 94.4 | 1.04 | 113.5 | 0.86 | 87.5 | 1.11 |
| 256x256x1024 | 100.1 | 87.4 | 1.15 | 98.0 | 1.02 | 94.0 | 1.07 |
| 1024x64x64 | 93.2 | 90.8 | 1.01 | 110.3 | 0.84 | 80.5 | 1.16 |
| 1024x256x256 | 101.5 | 99.6 | 1.02 | 103.6 | 0.98 | 100.4 | 1.01 |
| 4096x96x96 | 87.4 | 94.7 | 0.92 | 109.3 | 0.80 | 89.1 | 0.98 |
| 4096x128x128 | 98.0 | 97.9 | 1.00 | 109.6 | 0.89 | 89.7 | 1.10 |
| 4096x144x144 | 102.1 | 101.0 | 1.01 | 109.0 | 0.94 | 93.6 | 1.09 |
| 4096x160x160 | 87.3 | 99.3 | 0.88 | 107.6 | 0.81 | 96.5 | 0.90 |
| 4096x176x176 | 89.3 | 102.8 | 0.87 | 105.3 | 0.85 | 99.1 | 0.90 |
| 8192x128x128 | 98.0 | 98.3 | 1.00 | 109.7 | 0.89 | 90.2 | 1.09 |
| 10000x8x8 | 39.4 | 65.1 | 0.57 | 75.8 | 0.52 | 15.1 | 2.62 |
| 10000x100x100 | 86.4 | 95.2 | 0.91 | 109.2 | 0.79 | 84.0 | 1.03 |
| 10000x1000x1000 | 103.5 | 111.3 | 0.93 | 107.4 | 0.96 | 107.7 | 0.97 |
| 10000x4000x4000 | 106.2 | 114.4 | 0.93 | 109.9 | 0.97 | 110.7 | 0.96 |
TRSM float
| m×n | Eigen GFLOP/s | OpenBLAS GFLOP/s | Eigen ÷ OpenBLAS | Intel oneMKL GFLOP/s | Eigen ÷ Intel oneMKL | BLIS GFLOP/s | Eigen ÷ BLIS |
|---|---|---|---|---|---|---|---|
| 2x2 | 0.1 | 0.2 | 0.60 | 0.1 | 1.66 | 0.0 | 51.05 |
| 3x3 | 0.4 | 0.5 | 0.79 | 0.2 | 1.69 | 0.0 | 45.94 |
| 4x4 | 0.8 | 1.2 | 0.70 | 0.5 | 1.53 | 0.0 | 48.51 |
| 6x6 | 2.2 | 1.9 | 1.15 | 1.5 | 1.49 | 0.1 | 40.88 |
| 8x8 | 4.5 | 2.8 | 1.57 | 3.8 | 1.18 | 0.1 | 37.64 |
| 12x12 | 7.2 | 4.6 | 1.58 | 8.3 | 0.78 | 0.4 | 18.64 |
| 16x16 | 21.9 | 5.2 | 4.17 | 16.5 | 1.33 | 0.5 | 41.43 |
| 24x24 | 32.8 | 8.1 | 4.09 | 28.1 | 1.17 | 1.7 | 19.25 |
| 32x32 | 56.7 | 9.9 | 5.74 | 40.4 | 1.40 | 2.7 | 21.26 |
| 48x48 | 67.3 | 14.5 | 4.65 | 52.8 | 1.27 | 3.8 | 17.95 |
| 64x64 | 64.1 | 18.2 | 3.52 | 60.9 | 1.03 | 6.1 | 10.65 |
| 96x96 | 88.0 | 25.6 | 3.44 | 80.8 | 1.09 | 10.7 | 8.22 |
| 100x100 | 77.4 | 25.3 | 3.05 | 73.7 | 1.06 | 7.9 | 9.80 |
| 128x128 | 87.7 | 31.7 | 2.73 | 97.8 | 0.90 | 13.7 | 6.40 |
| 192x192 | 114.4 | 41.5 | 2.76 | 121.6 | 0.94 | 20.6 | 5.56 |
| 200x200 | 128.6 | 41.8 | 3.09 | 116.8 | 1.10 | 18.4 | 6.97 |
| 256x256 | 119.1 | 48.8 | 2.43 | 137.2 | 0.87 | 25.9 | 4.61 |
| 257x257 | 119.8 | 46.6 | 2.58 | 123.6 | 0.97 | 21.7 | 5.51 |
| 384x384 | 143.9 | 62.4 | 2.28 | 155.7 | 0.93 | 35.8 | 4.02 |
| 500x500 | 151.9 | 74.3 | 2.05 | 152.8 | 0.99 | 42.9 | 3.51 |
| 512x512 | 139.1 | 75.6 | 1.83 | 160.9 | 0.88 | 44.9 | 3.10 |
| 768x768 | 148.1 | 96.3 | 1.53 | 174.8 | 0.85 | 61.9 | 2.39 |
| 1000x1000 | 158.5 | 110.4 | 1.44 | 183.1 | 0.87 | 69.8 | 2.27 |
| 1001x1001 | 148.1 | 109.3 | 1.36 | 176.7 | 0.84 | 69.7 | 2.12 |
| 1024x1024 | 131.3 | 110.2 | 1.19 | 183.2 | 0.73 | 74.6 | 1.76 |
| 1536x1536 | 132.9 | 133.5 | 0.99 | 198.8 | 0.67 | 95.2 | 1.39 |
| 2048x2048 | 189.2 | 145.7 | 1.29 | 206.6 | 0.93 | 109.6 | 1.73 |
| 3072x3072 | 193.7 | 162.6 | 1.19 | 206.8 | 0.94 | 129.5 | 1.49 |
| 4096x4096 | 194.8 | 171.8 | 1.13 | 203.7 | 0.96 | 142.9 | 1.36 |
| 4097x4097 | 184.0 | 169.9 | 1.08 | 198.9 | 0.92 | 140.1 | 1.31 |
| 64x4096 | 50.6 | 18.4 | 2.75 | 65.3 | 0.77 | 7.8 | 6.58 |
| 256x4096 | 90.4 | 48.3 | 1.85 | 127.3 | 0.71 | 26.7 | 3.39 |
| 1024x8 | 62.6 | 37.4 | 1.80 | 68.1 | 0.87 | 27.9 | 2.25 |
| 1024x64 | 134.7 | 90.2 | 1.54 | 157.6 | 0.85 | 60.6 | 2.22 |
| 1024x256 | 151.8 | 104.6 | 1.45 | 179.4 | 0.85 | 69.2 | 2.19 |
| 1024x4096 | 163.1 | 110.7 | 1.48 | 185.7 | 0.88 | 74.7 | 2.18 |
| 4096x8 | 65.7 | 42.1 | 1.55 | 62.0 | 1.06 | 43.1 | 1.52 |
| 4096x64 | 148.6 | 126.4 | 1.16 | 165.7 | 0.90 | 108.5 | 1.38 |
| 4096x256 | 154.3 | 159.9 | 0.96 | 202.4 | 0.76 | 133.5 | 1.16 |
| 4096x1024 | 200.3 | 172.4 | 1.16 | 213.1 | 0.94 | 144.3 | 1.39 |
TRSM double
| m×n | Eigen GFLOP/s | OpenBLAS GFLOP/s | Eigen ÷ OpenBLAS | Intel oneMKL GFLOP/s | Eigen ÷ Intel oneMKL | BLIS GFLOP/s | Eigen ÷ BLIS |
|---|---|---|---|---|---|---|---|
| 2x2 | 0.2 | 0.2 | 0.66 | 0.1 | 1.81 | 0.0 | 35.02 |
| 3x3 | 0.4 | 0.4 | 0.95 | 0.2 | 1.74 | 0.0 | 30.38 |
| 4x4 | 0.9 | 0.9 | 0.95 | 0.6 | 1.65 | 0.0 | 30.94 |
| 6x6 | 2.2 | 1.8 | 1.27 | 1.5 | 1.47 | 0.1 | 24.46 |
| 8x8 | 6.1 | 2.8 | 2.18 | 4.0 | 1.51 | 0.2 | 31.02 |
| 12x12 | 8.6 | 4.0 | 2.10 | 8.4 | 1.04 | 0.6 | 14.05 |
| 16x16 | 19.2 | 4.3 | 4.44 | 17.4 | 1.15 | 1.0 | 18.44 |
| 24x24 | 30.1 | 6.5 | 4.52 | 32.8 | 0.94 | 1.9 | 15.78 |
| 32x32 | 34.7 | 8.0 | 4.24 | 42.1 | 0.84 | 3.4 | 10.14 |
| 48x48 | 42.3 | 10.7 | 3.90 | 47.7 | 0.89 | 5.9 | 7.15 |
| 64x64 | 45.8 | 13.6 | 3.36 | 57.4 | 0.80 | 8.5 | 5.40 |
| 96x96 | 54.9 | 16.8 | 3.26 | 71.7 | 0.78 | 13.4 | 4.03 |
| 100x100 | 51.1 | 16.5 | 3.10 | 67.2 | 0.73 | 11.5 | 4.43 |
| 128x128 | 56.9 | 18.6 | 3.06 | 77.7 | 0.73 | 16.6 | 3.42 |
| 192x192 | 71.1 | 21.8 | 3.26 | 90.1 | 0.79 | 24.2 | 2.93 |
| 200x200 | 74.4 | 22.3 | 3.36 | 88.6 | 0.83 | 23.3 | 3.20 |
| 256x256 | 74.4 | 23.7 | 3.10 | 90.6 | 0.82 | 29.8 | 2.50 |
| 257x257 | 66.8 | 23.0 | 2.90 | 82.9 | 0.81 | 28.0 | 2.39 |
| 384x384 | 78.0 | 25.7 | 3.04 | 87.0 | 0.89 | 38.1 | 2.05 |
| 500x500 | 73.9 | 33.3 | 2.21 | 91.2 | 0.81 | 43.5 | 1.70 |
| 512x512 | 66.3 | 34.0 | 1.95 | 89.5 | 0.74 | 40.4 | 1.64 |
| 768x768 | 69.7 | 41.4 | 1.68 | 96.0 | 0.73 | 56.6 | 1.23 |
| 1000x1000 | 73.2 | 50.5 | 1.45 | 101.6 | 0.72 | 63.2 | 1.16 |
| 1001x1001 | 66.3 | 50.2 | 1.32 | 98.8 | 0.67 | 63.3 | 1.05 |
| 1024x1024 | 69.4 | 50.7 | 1.37 | 101.5 | 0.68 | 59.0 | 1.18 |
| 1536x1536 | 94.8 | 60.1 | 1.58 | 104.4 | 0.91 | 69.2 | 1.37 |
| 2048x2048 | 95.3 | 67.8 | 1.41 | 103.6 | 0.92 | 75.5 | 1.26 |
| 3072x3072 | 90.9 | 76.3 | 1.19 | 102.0 | 0.89 | 82.5 | 1.10 |
| 4096x4096 | 88.9 | 83.3 | 1.07 | 103.3 | 0.86 | 87.1 | 1.02 |
| 4097x4097 | 81.3 | 82.6 | 0.98 | 101.4 | 0.80 | 87.5 | 0.93 |
| 64x4096 | 29.8 | 13.1 | 2.27 | 47.5 | 0.62 | 9.4 | 3.16 |
| 256x4096 | 52.7 | 23.2 | 2.27 | 82.8 | 0.64 | 28.9 | 1.82 |
| 1024x8 | 32.9 | 21.4 | 1.59 | 31.7 | 0.98 | 20.1 | 1.63 |
| 1024x64 | 75.9 | 43.0 | 1.78 | 82.6 | 0.90 | 49.3 | 1.54 |
| 1024x256 | 76.8 | 48.9 | 1.57 | 95.0 | 0.81 | 56.3 | 1.36 |
| 1024x4096 | 83.5 | 49.3 | 1.69 | 98.3 | 0.85 | 58.1 | 1.44 |
| 4096x8 | 31.6 | 23.8 | 1.32 | 25.7 | 1.23 | 18.5 | 1.72 |
| 4096x64 | 69.7 | 62.4 | 1.13 | 78.0 | 0.89 | 61.2 | 1.13 |
| 4096x256 | 73.4 | 78.7 | 0.93 | 98.9 | 0.74 | 80.1 | 0.92 |
| 4096x1024 | 100.3 | 82.2 | 1.22 | 105.7 | 0.95 | 86.9 | 1.16 |
SYRK float
| n×k | Eigen GFLOP/s | OpenBLAS GFLOP/s | Eigen ÷ OpenBLAS | Intel oneMKL GFLOP/s | Eigen ÷ Intel oneMKL | BLIS GFLOP/s | Eigen ÷ BLIS |
|---|---|---|---|---|---|---|---|
| 2x2 | 0.1 | 0.2 | 0.55 | 0.1 | 1.31 | 0.0 | 21.90 |
| 3x3 | 0.3 | 0.6 | 0.55 | 0.2 | 1.30 | 0.0 | 19.23 |
| 4x4 | 0.9 | 1.3 | 0.67 | 0.6 | 1.45 | 0.0 | 23.88 |
| 6x6 | 1.7 | 3.1 | 0.56 | 1.5 | 1.12 | 0.1 | 15.57 |
| 8x8 | 5.0 | 7.0 | 0.71 | 3.8 | 1.31 | 0.2 | 20.94 |
| 12x12 | 7.9 | 15.1 | 0.52 | 8.1 | 0.99 | 0.8 | 9.34 |
| 16x16 | 22.9 | 27.5 | 0.83 | 19.4 | 1.16 | 1.4 | 16.04 |
| 24x24 | 35.3 | 41.1 | 0.86 | 32.8 | 1.06 | 3.8 | 9.23 |
| 32x32 | 60.3 | 53.2 | 1.14 | 54.1 | 1.12 | 9.0 | 6.68 |
| 48x48 | 79.2 | 85.3 | 0.93 | 81.3 | 0.97 | 17.5 | 4.53 |
| 64x64 | 90.1 | 83.4 | 1.08 | 92.7 | 0.97 | 36.4 | 2.47 |
| 96x96 | 114.4 | 114.2 | 1.00 | 114.3 | 1.00 | 74.2 | 1.54 |
| 100x100 | 101.0 | 115.7 | 0.87 | 103.5 | 0.98 | 55.9 | 1.81 |
| 128x128 | 126.5 | 121.7 | 1.04 | 127.0 | 0.99 | 90.6 | 1.40 |
| 192x192 | 148.0 | 149.3 | 0.99 | 152.3 | 0.99 | 134.5 | 1.10 |
| 200x200 | 142.4 | 153.5 | 0.93 | 150.2 | 0.95 | 110.4 | 1.29 |
| 256x256 | 160.7 | 157.3 | 1.02 | 164.8 | 0.98 | 153.2 | 1.04 |
| 257x257 | 144.3 | 148.5 | 0.97 | 152.8 | 0.94 | 129.5 | 1.12 |
| 384x384 | 179.2 | 174.4 | 1.03 | 183.8 | 0.97 | 172.9 | 1.04 |
| 500x500 | 180.0 | 178.8 | 1.01 | 180.8 | 1.00 | 162.7 | 1.11 |
| 512x512 | 186.7 | 173.4 | 1.08 | 186.9 | 1.00 | 170.7 | 1.09 |
| 768x768 | 192.6 | 189.2 | 1.02 | 196.5 | 0.98 | 186.2 | 1.03 |
| 1000x1000 | 199.7 | 195.3 | 1.02 | 202.6 | 0.99 | 187.4 | 1.06 |
| 1001x1001 | 187.4 | 190.0 | 0.98 | 195.1 | 0.97 | 185.9 | 1.01 |
| 1024x1024 | 198.5 | 190.7 | 1.04 | 198.9 | 1.00 | 193.2 | 1.03 |
| 1536x1536 | 207.0 | 203.2 | 1.02 | 208.4 | 0.99 | 202.7 | 1.02 |
| 2048x2048 | 209.7 | 205.4 | 1.02 | 214.8 | 0.98 | 206.4 | 1.02 |
| 3072x3072 | 206.5 | 209.2 | 0.99 | 217.9 | 0.95 | 209.4 | 0.99 |
| 4096x4096 | 204.5 | 212.3 | 0.96 | 218.9 | 0.93 | 209.6 | 0.98 |
| 4097x4097 | 194.3 | 209.7 | 0.93 | 213.1 | 0.92 | 204.2 | 0.95 |
| 64x4096 | 91.1 | 97.4 | 0.94 | 90.2 | 1.01 | 68.8 | 1.32 |
| 256x4096 | 152.9 | 153.7 | 0.99 | 154.5 | 0.99 | 147.7 | 1.03 |
| 1024x4096 | 198.2 | 192.1 | 1.03 | 198.8 | 1.00 | 193.4 | 1.03 |
| 4096x8 | 90.0 | 61.5 | 1.46 | 88.7 | 1.00 | 51.8 | 1.75 |
| 4096x64 | 169.1 | 175.9 | 0.96 | 188.2 | 0.90 | 179.5 | 0.94 |
| 4096x256 | 205.9 | 212.9 | 0.97 | 221.8 | 0.93 | 208.8 | 0.99 |
| 4096x1024 | 205.6 | 209.8 | 0.98 | 219.9 | 0.93 | 208.8 | 0.99 |
SYRK double
| n×k | Eigen GFLOP/s | OpenBLAS GFLOP/s | Eigen ÷ OpenBLAS | Intel oneMKL GFLOP/s | Eigen ÷ Intel oneMKL | BLIS GFLOP/s | Eigen ÷ BLIS |
|---|---|---|---|---|---|---|---|
| 2x2 | 0.2 | 0.2 | 0.83 | 0.1 | 1.88 | 0.0 | 31.66 |
| 3x3 | 0.4 | 0.6 | 0.80 | 0.3 | 1.71 | 0.0 | 26.01 |
| 4x4 | 1.1 | 1.3 | 0.88 | 0.6 | 1.83 | 0.0 | 30.19 |
| 6x6 | 2.4 | 3.1 | 0.75 | 1.5 | 1.55 | 0.1 | 20.76 |
| 8x8 | 6.3 | 6.4 | 0.97 | 3.8 | 1.65 | 0.2 | 25.42 |
| 12x12 | 9.5 | 12.1 | 0.79 | 7.6 | 1.25 | 0.7 | 13.50 |
| 16x16 | 22.9 | 18.2 | 1.26 | 16.7 | 1.37 | 1.8 | 13.08 |
| 24x24 | 34.0 | 26.1 | 1.30 | 29.4 | 1.16 | 3.9 | 8.62 |
| 32x32 | 43.0 | 31.4 | 1.37 | 40.3 | 1.07 | 8.7 | 4.94 |
| 48x48 | 47.2 | 39.4 | 1.20 | 48.3 | 0.98 | 18.5 | 2.50 |
| 64x64 | 55.1 | 43.2 | 1.26 | 56.4 | 0.98 | 28.9 | 1.91 |
| 96x96 | 65.1 | 56.6 | 1.15 | 67.0 | 0.97 | 46.3 | 1.41 |
| 100x100 | 63.7 | 58.8 | 1.08 | 63.5 | 1.00 | 43.0 | 1.49 |
| 128x128 | 73.2 | 56.0 | 1.31 | 74.3 | 0.98 | 61.8 | 1.19 |
| 192x192 | 82.5 | 70.3 | 1.17 | 86.5 | 0.96 | 75.3 | 1.10 |
| 200x200 | 84.4 | 80.3 | 1.05 | 88.1 | 0.96 | 71.9 | 1.17 |
| 256x256 | 89.8 | 73.2 | 1.23 | 91.7 | 0.97 | 83.0 | 1.08 |
| 257x257 | 83.1 | 77.8 | 1.06 | 86.1 | 0.97 | 75.6 | 1.10 |
| 384x384 | 91.9 | 81.8 | 1.12 | 92.0 | 1.00 | 86.8 | 1.06 |
| 500x500 | 93.0 | 86.2 | 1.08 | 96.5 | 0.96 | 88.1 | 1.05 |
| 512x512 | 93.1 | 85.6 | 1.08 | 94.3 | 0.99 | 91.5 | 1.02 |
| 768x768 | 98.3 | 94.5 | 1.04 | 97.3 | 1.01 | 97.3 | 1.01 |
| 1000x1000 | 102.6 | 100.3 | 1.03 | 103.8 | 0.99 | 99.0 | 1.04 |
| 1001x1001 | 96.6 | 98.5 | 0.98 | 98.9 | 0.98 | 98.1 | 0.98 |
| 1024x1024 | 100.3 | 98.2 | 1.02 | 103.3 | 0.97 | 100.1 | 1.00 |
| 1536x1536 | 101.8 | 103.6 | 0.98 | 107.0 | 0.96 | 103.3 | 0.98 |
| 2048x2048 | 97.4 | 106.0 | 0.92 | 107.5 | 0.91 | 103.4 | 0.94 |
| 3072x3072 | 94.0 | 108.7 | 0.86 | 108.9 | 0.87 | 105.3 | 0.89 |
| 4096x4096 | 93.2 | 110.2 | 0.85 | 109.2 | 0.85 | 106.5 | 0.88 |
| 4097x4097 | 88.6 | 109.3 | 0.81 | 106.6 | 0.83 | 103.4 | 0.86 |
| 64x4096 | 51.6 | 39.8 | 1.29 | 52.4 | 0.98 | 39.6 | 1.31 |
| 256x4096 | 83.6 | 73.2 | 1.14 | 82.3 | 1.01 | 80.9 | 1.03 |
| 1024x4096 | 100.0 | 98.3 | 1.02 | 102.1 | 0.98 | 98.7 | 1.01 |
| 4096x8 | 20.1 | 31.2 | 0.65 | 30.6 | 0.66 | 26.0 | 0.78 |
| 4096x64 | 89.6 | 96.0 | 0.93 | 83.8 | 1.07 | 92.8 | 0.97 |
| 4096x256 | 91.6 | 110.1 | 0.83 | 108.8 | 0.84 | 107.3 | 0.85 |
| 4096x1024 | 92.5 | 110.2 | 0.84 | 109.1 | 0.85 | 106.5 | 0.87 |
POTRF float
| n | Eigen GFLOP/s | OpenBLAS GFLOP/s | Eigen ÷ OpenBLAS | Intel oneMKL GFLOP/s | Eigen ÷ Intel oneMKL |
|---|---|---|---|---|---|
| 2 | 0.2 | 0.1 | 2.40 | 0.2 | 1.31 |
| 3 | 0.6 | 0.3 | 2.36 | 0.6 | 0.96 |
| 4 | 0.8 | 0.4 | 1.89 | 1.4 | 0.54 |
| 6 | 1.1 | 0.8 | 1.38 | 0.9 | 1.19 |
| 8 | 1.7 | 1.3 | 1.35 | 1.4 | 1.24 |
| 12 | 2.7 | 2.5 | 1.07 | 2.3 | 1.21 |
| 16 | 4.1 | 4.0 | 1.03 | 3.2 | 1.26 |
| 24 | 6.4 | 7.8 | 0.84 | 3.8 | 1.66 |
| 32 | 8.7 | 9.2 | 0.94 | 5.4 | 1.60 |
| 48 | 14.3 | 11.4 | 1.27 | 7.7 | 1.83 |
| 64 | 19.8 | 17.0 | 1.17 | 9.5 | 2.07 |
| 96 | 28.2 | 24.2 | 1.17 | 11.3 | 2.48 |
| 100 | 25.6 | 22.6 | 1.14 | 11.5 | 2.21 |
| 128 | 47.7 | 33.7 | 1.42 | 12.5 | 3.80 |
| 192 | 68.1 | 43.2 | 1.58 | 65.6 | 1.04 |
| 200 | 65.5 | 40.3 | 1.62 | 69.9 | 0.94 |
| 256 | 90.5 | 56.3 | 1.60 | 84.2 | 1.08 |
| 257 | 78.2 | 52.7 | 1.48 | 82.5 | 0.95 |
| 384 | 116.8 | 74.3 | 1.57 | 113.6 | 1.03 |
| 500 | 118.9 | 74.0 | 1.61 | 126.5 | 0.94 |
| 512 | 120.9 | 82.5 | 1.47 | 133.3 | 0.91 |
| 768 | 132.0 | 95.4 | 1.38 | 137.9 | 0.96 |
| 1000 | 143.5 | 101.3 | 1.42 | 148.7 | 0.96 |
| 1001 | 135.9 | 99.4 | 1.37 | 143.3 | 0.95 |
| 1024 | 137.6 | 105.0 | 1.31 | 133.2 | 1.03 |
| 1536 | 162.4 | 125.0 | 1.30 | 162.2 | 1.00 |
| 2048 | 176.5 | 139.0 | 1.27 | 176.4 | 1.00 |
| 3072 | 175.7 | 152.7 | 1.15 | 180.0 | 0.98 |
| 4096 | 175.3 | 158.4 | 1.11 | 176.7 | 0.99 |
| 4097 | 168.8 | 157.0 | 1.07 | 175.9 | 0.96 |
POTRF double
| n | Eigen GFLOP/s | OpenBLAS GFLOP/s | Eigen ÷ OpenBLAS | Intel oneMKL GFLOP/s | Eigen ÷ Intel oneMKL |
|---|---|---|---|---|---|
| 2 | 0.3 | 0.1 | 2.38 | 0.2 | 1.54 |
| 3 | 0.5 | 0.3 | 2.05 | 0.5 | 1.02 |
| 4 | 0.7 | 0.5 | 1.45 | 1.2 | 0.57 |
| 6 | 1.0 | 1.0 | 1.01 | 0.9 | 1.13 |
| 8 | 1.6 | 1.5 | 1.06 | 1.3 | 1.23 |
| 12 | 2.9 | 2.5 | 1.13 | 2.5 | 1.16 |
| 16 | 4.2 | 3.8 | 1.10 | 3.5 | 1.20 |
| 24 | 7.0 | 6.1 | 1.15 | 3.6 | 1.92 |
| 32 | 9.0 | 8.3 | 1.08 | 5.4 | 1.66 |
| 48 | 14.1 | 9.8 | 1.43 | 8.9 | 1.58 |
| 64 | 16.9 | 13.4 | 1.26 | 11.1 | 1.52 |
| 96 | 23.4 | 19.0 | 1.22 | 15.1 | 1.57 |
| 100 | 22.1 | 18.1 | 1.22 | 15.6 | 1.41 |
| 128 | 34.6 | 24.5 | 1.42 | 13.3 | 2.58 |
| 192 | 46.0 | 32.5 | 1.42 | 45.1 | 1.02 |
| 200 | 47.2 | 29.6 | 1.60 | 46.7 | 1.01 |
| 256 | 55.3 | 35.6 | 1.55 | 56.2 | 0.99 |
| 257 | 49.7 | 34.3 | 1.45 | 50.4 | 0.98 |
| 384 | 62.3 | 40.3 | 1.55 | 64.3 | 0.97 |
| 500 | 62.3 | 40.5 | 1.54 | 67.2 | 0.93 |
| 512 | 60.6 | 41.7 | 1.45 | 65.1 | 0.93 |
| 768 | 68.1 | 47.8 | 1.43 | 72.0 | 0.94 |
| 1000 | 77.4 | 49.2 | 1.57 | 79.2 | 0.98 |
| 1001 | 72.9 | 48.6 | 1.50 | 67.0 | 1.09 |
| 1024 | 74.1 | 50.5 | 1.47 | 72.3 | 1.02 |
| 1536 | 84.0 | 54.7 | 1.54 | 85.4 | 0.98 |
| 2048 | 82.6 | 59.2 | 1.40 | 85.1 | 0.97 |
| 3072 | 81.9 | 65.8 | 1.24 | 88.1 | 0.93 |
| 4096 | 75.4 | 68.5 | 1.10 | 83.0 | 0.91 |
| 4097 | 72.7 | 68.4 | 1.06 | 82.7 | 0.88 |
GETRF float
| n | Eigen GFLOP/s | OpenBLAS GFLOP/s | Eigen ÷ OpenBLAS | Intel oneMKL GFLOP/s | Eigen ÷ Intel oneMKL |
|---|---|---|---|---|---|
| 2 | 0.2 | 0.1 | 1.84 | 0.3 | 0.58 |
| 3 | 0.4 | 0.2 | 2.03 | 0.9 | 0.47 |
| 4 | 0.7 | 0.4 | 1.88 | 2.1 | 0.31 |
| 6 | 1.2 | 0.7 | 1.81 | 1.0 | 1.23 |
| 8 | 1.9 | 0.9 | 2.03 | 0.8 | 2.33 |
| 12 | 3.1 | 1.5 | 1.94 | 1.5 | 2.08 |
| 16 | 4.6 | 2.2 | 2.00 | 2.4 | 2.04 |
| 24 | 5.2 | 4.3 | 1.26 | 3.5 | 1.41 |
| 32 | 8.4 | 5.8 | 1.47 | 5.1 | 1.62 |
| 48 | 13.7 | 10.0 | 1.40 | 9.1 | 1.47 |
| 64 | 18.7 | 12.9 | 1.47 | 13.6 | 1.35 |
| 96 | 28.3 | 19.2 | 1.48 | 23.2 | 1.21 |
| 100 | 25.9 | 19.6 | 1.33 | 23.1 | 1.11 |
| 128 | 39.9 | 24.5 | 1.66 | 32.6 | 1.20 |
| 192 | 58.3 | 35.7 | 1.65 | 50.8 | 1.14 |
| 200 | 58.0 | 35.7 | 1.62 | 52.8 | 1.10 |
| 256 | 62.5 | 44.3 | 1.41 | 68.8 | 0.91 |
| 257 | 62.9 | 43.1 | 1.45 | 65.0 | 0.97 |
| 384 | 71.7 | 60.2 | 1.21 | 96.9 | 0.73 |
| 500 | 82.3 | 67.2 | 1.22 | 109.5 | 0.75 |
| 512 | 78.4 | 70.2 | 1.12 | 115.1 | 0.68 |
| 768 | 108.0 | 86.8 | 1.25 | 134.5 | 0.80 |
| 1000 | 122.9 | 101.1 | 1.22 | 142.6 | 0.86 |
| 1001 | 116.9 | 99.7 | 1.18 | 136.3 | 0.86 |
| 1024 | 116.9 | 99.9 | 1.18 | 130.0 | 0.89 |
| 1536 | 133.1 | 124.7 | 1.07 | 158.7 | 0.84 |
| 2048 | 148.6 | 138.2 | 1.07 | 165.7 | 0.90 |
| 3072 | 158.5 | 153.4 | 1.03 | 173.8 | 0.91 |
| 4096 | 156.1 | 164.1 | 0.95 | 177.5 | 0.88 |
| 4097 | 148.1 | 162.6 | 0.91 | 182.6 | 0.81 |
GETRF double
| n | Eigen GFLOP/s | OpenBLAS GFLOP/s | Eigen ÷ OpenBLAS | Intel oneMKL GFLOP/s | Eigen ÷ Intel oneMKL |
|---|---|---|---|---|---|
| 2 | 0.2 | 0.1 | 1.88 | 0.3 | 0.68 |
| 3 | 0.5 | 0.2 | 1.88 | 0.8 | 0.55 |
| 4 | 0.7 | 0.4 | 1.68 | 1.9 | 0.38 |
| 6 | 1.3 | 0.8 | 1.54 | 1.1 | 1.21 |
| 8 | 2.1 | 1.2 | 1.82 | 1.2 | 1.88 |
| 12 | 3.0 | 1.7 | 1.83 | 1.9 | 1.57 |
| 16 | 4.5 | 2.6 | 1.80 | 2.7 | 1.59 |
| 24 | 5.8 | 4.0 | 1.44 | 3.7 | 1.54 |
| 32 | 8.4 | 5.5 | 1.53 | 5.2 | 1.58 |
| 48 | 13.1 | 8.5 | 1.57 | 8.2 | 1.58 |
| 64 | 17.4 | 10.8 | 1.65 | 11.7 | 1.46 |
| 96 | 23.7 | 15.4 | 1.56 | 18.9 | 1.24 |
| 100 | 22.3 | 15.3 | 1.47 | 19.2 | 1.15 |
| 128 | 28.7 | 19.4 | 1.49 | 23.4 | 1.22 |
| 192 | 39.1 | 26.3 | 1.49 | 37.2 | 1.04 |
| 200 | 41.1 | 26.1 | 1.58 | 38.7 | 1.06 |
| 256 | 44.8 | 30.9 | 1.43 | 38.5 | 1.18 |
| 257 | 41.2 | 30.2 | 1.34 | 41.5 | 1.01 |
| 384 | 49.9 | 36.8 | 1.35 | 53.4 | 0.94 |
| 500 | 52.0 | 38.9 | 1.33 | 56.5 | 0.93 |
| 512 | 49.7 | 40.3 | 1.24 | 52.4 | 0.95 |
| 768 | 59.5 | 46.9 | 1.27 | 58.7 | 1.01 |
| 1000 | 67.5 | 52.6 | 1.28 | 64.8 | 1.04 |
| 1001 | 63.8 | 52.2 | 1.22 | 61.7 | 1.04 |
| 1024 | 65.5 | 53.0 | 1.24 | 62.6 | 1.05 |
| 1536 | 70.0 | 63.3 | 1.10 | 69.4 | 1.01 |
| 2048 | 77.2 | 68.2 | 1.13 | 74.8 | 1.03 |
| 3072 | 75.8 | 77.6 | 0.98 | 70.7 | 1.07 |
| 4096 | 75.0 | 83.2 | 0.90 | 93.3 | 0.81 |
| 4097 | 71.7 | 82.4 | 0.87 | 91.6 | 0.78 |
GEQRF float
| m×n | Eigen GFLOP/s | OpenBLAS GFLOP/s | Eigen ÷ OpenBLAS | Intel oneMKL GFLOP/s | Eigen ÷ Intel oneMKL |
|---|---|---|---|---|---|
| 2x2 | 0.1 | 0.1 | 0.68 | 0.5 | 0.16 |
| 3x3 | 0.1 | 0.2 | 0.71 | 0.5 | 0.26 |
| 4x4 | 0.2 | 0.3 | 0.71 | 0.7 | 0.30 |
| 6x6 | 0.4 | 0.6 | 0.77 | 0.9 | 0.50 |
| 8x8 | 0.7 | 0.9 | 0.79 | 1.3 | 0.54 |
| 12x12 | 1.4 | 1.6 | 0.88 | 2.2 | 0.63 |
| 16x16 | 2.3 | 2.3 | 1.01 | 3.1 | 0.74 |
| 24x24 | 4.1 | 3.5 | 1.16 | 4.3 | 0.94 |
| 32x32 | 5.7 | 4.6 | 1.23 | 6.2 | 0.92 |
| 48x48 | 9.6 | 8.3 | 1.16 | 9.0 | 1.07 |
| 64x64 | 8.1 | 10.2 | 0.80 | 11.6 | 0.69 |
| 96x96 | 17.0 | 14.8 | 1.15 | 16.9 | 1.00 |
| 100x100 | 13.8 | 15.6 | 0.88 | 16.8 | 0.82 |
| 128x128 | 23.6 | 17.5 | 1.35 | 20.0 | 1.18 |
| 192x192 | 41.6 | 33.1 | 1.26 | 37.3 | 1.11 |
| 200x200 | 38.1 | 41.5 | 0.91 | 37.6 | 1.02 |
| 256x256 | 53.2 | 42.5 | 1.25 | 51.5 | 1.03 |
| 257x257 | 42.0 | 52.3 | 0.80 | 58.0 | 0.72 |
| 384x384 | 79.5 | 62.6 | 1.27 | 81.2 | 0.98 |
| 500x500 | 88.9 | 83.1 | 1.07 | 108.2 | 0.82 |
| 512x512 | 93.8 | 72.3 | 1.30 | 92.0 | 1.02 |
| 768x768 | 115.0 | 88.5 | 1.30 | 112.9 | 1.01 |
| 1000x1000 | 122.5 | 105.8 | 1.16 | 135.8 | 0.90 |
| 1001x1001 | 116.6 | 103.6 | 1.13 | 132.0 | 0.88 |
| 1024x1024 | 117.6 | 85.6 | 1.38 | 100.3 | 1.17 |
| 1536x1536 | 132.4 | 100.9 | 1.31 | 126.4 | 1.05 |
| 2048x2048 | 137.1 | 103.1 | 1.33 | 127.5 | 1.07 |
| 3072x3072 | 136.8 | 111.1 | 1.23 | 137.4 | 1.00 |
| 4096x4096 | 125.5 | 108.2 | 1.15 | 146.9 | 0.86 |
| 4097x4097 | 119.9 | 108.6 | 1.10 | 154.6 | 0.78 |
| 4096x8 | 21.8 | 20.7 | 1.05 | 29.7 | 0.74 |
| 4096x64 | 33.4 | 31.9 | 1.04 | 46.4 | 0.72 |
| 4096x256 | 75.3 | 59.1 | 1.28 | 65.4 | 1.14 |
| 4096x1024 | 124.6 | 104.5 | 1.19 | 122.4 | 1.02 |
| 10000x8 | 20.2 | 19.2 | 1.05 | 25.2 | 0.80 |
| 10000x100 | 36.8 | 20.6 | 1.81 | 61.7 | 0.59 |
| 10000x1000 | 120.3 | 107.0 | 1.13 | 133.1 | 0.90 |
| 10000x4000 | 112.1 | 112.6 | 1.00 | 155.3 | 0.72 |
| 100000x8 | 13.9 | 13.6 | 1.02 | 15.4 | 0.90 |
| 100000x64 | 16.7 | 15.9 | 1.06 | 33.6 | 0.50 |
| 100000x256 | 41.0 | 35.5 | 1.16 | 56.1 | 0.73 |
GEQRF double
| m×n | Eigen GFLOP/s | OpenBLAS GFLOP/s | Eigen ÷ OpenBLAS | Intel oneMKL GFLOP/s | Eigen ÷ Intel oneMKL |
|---|---|---|---|---|---|
| 2x2 | 0.1 | 0.1 | 0.65 | 0.6 | 0.13 |
| 3x3 | 0.1 | 0.2 | 0.67 | 0.6 | 0.23 |
| 4x4 | 0.2 | 0.3 | 0.71 | 0.8 | 0.27 |
| 6x6 | 0.4 | 0.6 | 0.73 | 0.9 | 0.46 |
| 8x8 | 0.7 | 0.9 | 0.76 | 1.4 | 0.50 |
| 12x12 | 1.4 | 1.7 | 0.80 | 2.5 | 0.55 |
| 16x16 | 2.2 | 2.7 | 0.83 | 3.7 | 0.60 |
| 24x24 | 4.1 | 4.8 | 0.85 | 7.0 | 0.58 |
| 32x32 | 6.0 | 6.5 | 0.92 | 10.6 | 0.57 |
| 48x48 | 9.5 | 10.3 | 0.91 | 16.4 | 0.59 |
| 64x64 | 8.0 | 13.2 | 0.60 | 20.2 | 0.40 |
| 96x96 | 15.6 | 14.1 | 1.09 | 17.6 | 0.90 |
| 100x100 | 12.8 | 14.1 | 0.91 | 17.6 | 0.73 |
| 128x128 | 19.5 | 13.9 | 1.39 | 23.3 | 0.85 |
| 192x192 | 28.9 | 25.6 | 1.13 | 38.7 | 0.75 |
| 200x200 | 28.3 | 32.2 | 0.87 | 41.3 | 0.69 |
| 256x256 | 33.4 | 30.8 | 1.08 | 41.4 | 0.81 |
| 257x257 | 30.5 | 36.2 | 0.84 | 42.5 | 0.72 |
| 384x384 | 45.4 | 40.6 | 1.11 | 52.1 | 0.88 |
| 500x500 | 49.3 | 48.3 | 1.02 | 60.4 | 0.82 |
| 512x512 | 48.5 | 43.1 | 1.13 | 51.5 | 0.94 |
| 768x768 | 56.5 | 51.6 | 1.09 | 59.8 | 0.94 |
| 1000x1000 | 61.1 | 59.7 | 1.02 | 71.2 | 0.86 |
| 1001x1001 | 58.6 | 58.3 | 1.00 | 68.5 | 0.86 |
| 1024x1024 | 60.2 | 52.7 | 1.15 | 61.9 | 0.97 |
| 1536x1536 | 64.9 | 58.2 | 1.12 | 69.5 | 0.93 |
| 2048x2048 | 66.2 | 61.4 | 1.08 | 72.3 | 0.92 |
| 3072x3072 | 59.8 | 62.2 | 0.96 | 72.9 | 0.82 |
| 4096x4096 | 55.0 | 59.4 | 0.92 | 76.6 | 0.72 |
| 4097x4097 | 53.9 | 59.6 | 0.90 | 78.4 | 0.69 |
| 4096x8 | 9.1 | 10.3 | 0.88 | 13.7 | 0.66 |
| 4096x64 | 15.1 | 12.9 | 1.17 | 27.8 | 0.55 |
| 4096x256 | 35.7 | 24.0 | 1.49 | 44.1 | 0.81 |
| 4096x1024 | 59.5 | 55.9 | 1.07 | 66.5 | 0.89 |
| 10000x8 | 9.0 | 10.0 | 0.89 | 13.6 | 0.67 |
| 10000x100 | 13.0 | 8.9 | 1.46 | 35.7 | 0.36 |
| 10000x1000 | 47.0 | 55.0 | 0.86 | 62.3 | 0.76 |
| 10000x4000 | 51.6 | 62.6 | 0.83 | 75.8 | 0.68 |
| 100000x8 | 5.3 | 5.9 | 0.91 | 6.6 | 0.81 |
| 100000x64 | 7.3 | 6.9 | 1.05 | 15.5 | 0.47 |
| 100000x256 | 18.4 | 15.0 | 1.22 | 26.1 | 0.70 |
SYEV float
| n | Eigen GFLOP/s | OpenBLAS GFLOP/s | Eigen ÷ OpenBLAS | Intel oneMKL GFLOP/s | Eigen ÷ Intel oneMKL |
|---|---|---|---|---|---|
| 2 | 0.6 | 0.4 | 1.74 | 0.3 | 2.00 |
| 3 | 0.6 | 0.4 | 1.57 | 0.4 | 1.69 |
| 4 | 0.8 | 0.5 | 1.49 | 0.5 | 1.47 |
| 6 | 1.2 | 0.8 | 1.46 | 0.9 | 1.41 |
| 8 | 1.7 | 1.2 | 1.50 | 1.3 | 1.32 |
| 12 | 2.7 | 1.9 | 1.39 | 2.1 | 1.28 |
| 16 | 3.8 | 2.6 | 1.46 | 3.5 | 1.07 |
| 24 | 5.9 | 3.7 | 1.60 | 4.7 | 1.26 |
| 32 | 7.7 | 4.5 | 1.74 | 7.4 | 1.04 |
| 48 | 11.3 | 6.5 | 1.76 | 10.7 | 1.05 |
| 64 | 14.6 | 7.6 | 1.92 | 12.8 | 1.14 |
| 96 | 22.1 | 9.3 | 2.41 | 18.8 | 1.16 |
| 100 | 20.3 | 9.1 | 2.23 | 18.7 | 1.08 |
| 128 | 27.6 | 10.1 | 2.72 | 21.3 | 1.31 |
| 192 | 38.0 | 11.3 | 3.36 | 33.4 | 1.14 |
| 200 | 37.8 | 11.4 | 3.32 | 30.7 | 1.22 |
| 256 | 45.5 | 12.3 | 3.66 | 35.6 | 1.29 |
| 257 | 39.6 | 12.3 | 3.22 | 30.6 | 1.30 |
| 384 | 55.6 | 13.6 | 4.09 | 38.0 | 1.47 |
| 500 | 59.6 | 14.2 | 4.19 | 52.5 | 1.13 |
| 512 | 63.5 | 14.3 | 4.43 | 42.6 | 1.50 |
| 768 | 68.7 | 15.0 | 4.55 | 76.2 | 0.91 |
| 1000 | 52.3 | 15.2 | 3.43 | 86.2 | 0.61 |
| 1001 | 50.8 | 15.2 | 3.33 | 85.0 | 0.60 |
| 1024 | 49.0 | 13.6 | 3.61 | 74.3 | 0.66 |
| 1536 | 44.7 | 15.5 | 2.89 | 75.4 | 0.59 |
| 2048 | 43.7 | 14.0 | 3.09 | 80.1 | 0.55 |
SYEV double
| n | Eigen GFLOP/s | OpenBLAS GFLOP/s | Eigen ÷ OpenBLAS | Intel oneMKL GFLOP/s | Eigen ÷ Intel oneMKL |
|---|---|---|---|---|---|
| 2 | 0.6 | 0.4 | 1.54 | 0.3 | 1.73 |
| 3 | 0.5 | 0.3 | 1.48 | 0.3 | 1.31 |
| 4 | 0.6 | 0.5 | 1.36 | 0.5 | 1.37 |
| 6 | 1.0 | 0.7 | 1.37 | 0.7 | 1.37 |
| 8 | 1.4 | 1.0 | 1.31 | 1.2 | 1.14 |
| 12 | 2.1 | 1.8 | 1.20 | 1.8 | 1.17 |
| 16 | 3.0 | 2.3 | 1.31 | 2.9 | 1.02 |
| 24 | 4.6 | 3.3 | 1.39 | 4.7 | 0.97 |
| 32 | 6.0 | 4.1 | 1.48 | 6.5 | 0.92 |
| 48 | 8.6 | 5.1 | 1.69 | 8.6 | 1.00 |
| 64 | 10.9 | 6.4 | 1.69 | 12.0 | 0.92 |
| 96 | 15.2 | 7.8 | 1.94 | 15.6 | 0.99 |
| 100 | 15.1 | 7.3 | 2.08 | 16.9 | 0.89 |
| 128 | 18.2 | 7.9 | 2.28 | 18.9 | 0.96 |
| 192 | 22.3 | 8.4 | 2.63 | 25.7 | 0.87 |
| 200 | 22.9 | 9.5 | 2.39 | 26.9 | 0.85 |
| 256 | 25.8 | 10.0 | 2.57 | 29.8 | 0.87 |
| 257 | 24.7 | 10.0 | 2.46 | 29.3 | 0.84 |
| 384 | 31.3 | 10.2 | 3.05 | 37.1 | 0.84 |
| 500 | 29.6 | 11.4 | 2.59 | 41.6 | 0.71 |
| 512 | 31.8 | 10.4 | 3.06 | 40.1 | 0.79 |
| 768 | 23.3 | 11.9 | 1.96 | 45.6 | 0.51 |
| 1000 | 21.1 | 11.9 | 1.77 | 50.3 | 0.42 |
| 1001 | 20.8 | 11.9 | 1.74 | 48.7 | 0.43 |
| 1024 | 20.8 | 11.1 | 1.87 | 49.2 | 0.42 |
| 1536 | 20.2 | 11.2 | 1.80 | 53.3 | 0.38 |
| 2048 | 20.1 | 11.3 | 1.77 | 55.0 | 0.37 |
GESDD float
| m×n | Eigen GFLOP/s | OpenBLAS GFLOP/s | Eigen ÷ OpenBLAS | Intel oneMKL GFLOP/s | Eigen ÷ Intel oneMKL |
|---|---|---|---|---|---|
| 2x2 | 1.9 | 0.2 | 9.17 | 0.3 | 7.11 |
| 3x3 | 1.4 | 0.4 | 3.34 | 0.4 | 3.20 |
| 4x4 | 1.4 | 0.6 | 2.18 | 0.6 | 2.24 |
| 6x6 | 1.4 | 1.2 | 1.19 | 1.1 | 1.25 |
| 8x8 | 1.7 | 1.8 | 0.96 | 1.8 | 0.96 |
| 12x12 | 2.1 | 2.9 | 0.71 | 2.8 | 0.74 |
| 16x16 | 3.2 | 3.8 | 0.84 | 4.7 | 0.68 |
| 24x24 | 4.7 | 5.4 | 0.88 | 6.0 | 0.79 |
| 32x32 | 6.4 | 9.0 | 0.71 | 10.6 | 0.61 |
| 48x48 | 10.4 | 14.3 | 0.73 | 15.9 | 0.66 |
| 64x64 | 13.0 | 20.8 | 0.62 | 23.8 | 0.55 |
| 96x96 | 21.9 | 30.5 | 0.72 | 34.9 | 0.63 |
| 100x100 | 22.4 | 31.7 | 0.71 | 33.6 | 0.66 |
| 128x128 | 28.8 | 40.5 | 0.71 | 45.5 | 0.63 |
| 192x192 | 48.8 | 62.5 | 0.78 | 69.3 | 0.71 |
| 200x200 | 51.0 | 66.8 | 0.77 | 72.1 | 0.71 |
| 256x256 | 61.3 | 75.1 | 0.82 | 79.8 | 0.77 |
| 257x257 | 64.0 | 83.5 | 0.77 | 91.5 | 0.70 |
| 384x384 | 91.6 | 103.1 | 0.89 | 108.0 | 0.85 |
| 500x500 | 109.9 | 128.9 | 0.85 | 136.2 | 0.81 |
| 512x512 | 108.1 | 120.5 | 0.89 | 122.7 | 0.88 |
| 768x768 | 134.6 | 144.0 | 0.94 | 145.2 | 0.93 |
| 1000x1000 | 131.7 | 135.4 | 0.97 | 153.1 | 0.86 |
| 1001x1001 | 130.1 | 143.7 | 0.91 | 151.9 | 0.86 |
| 1024x1024 | 111.6 | 113.7 | 0.99 | 123.7 | 0.90 |
| 1536x1536 | 123.8 | 128.6 | 0.96 | 137.8 | 0.90 |
| 2048x2048 | 128.9 | 133.8 | 0.96 | 137.1 | 0.94 |
| 4096x64 | 104.5 | 72.1 | 1.45 | 124.0 | 0.84 |
| 4096x256 | 181.8 | 141.0 | 1.29 | 166.7 | 1.09 |
| 4096x1024 | 176.1 | 165.1 | 1.07 | 184.9 | 0.95 |
| 10000x8 | 28.6 | 26.3 | 1.08 | 78.1 | 0.37 |
| 10000x100 | 128.3 | 59.9 | 2.13 | 163.9 | 0.79 |
| 10000x1000 | 225.9 | 230.5 | 0.98 | 237.6 | 0.95 |
GESDD double
| m×n | Eigen GFLOP/s | OpenBLAS GFLOP/s | Eigen ÷ OpenBLAS | Intel oneMKL GFLOP/s | Eigen ÷ Intel oneMKL |
|---|---|---|---|---|---|
| 2x2 | 1.7 | 0.2 | 7.92 | 0.3 | 6.73 |
| 3x3 | 1.0 | 0.4 | 2.50 | 0.4 | 2.64 |
| 4x4 | 1.0 | 0.6 | 1.72 | 0.6 | 1.81 |
| 6x6 | 1.1 | 1.1 | 0.99 | 1.0 | 1.06 |
| 8x8 | 1.1 | 1.5 | 0.72 | 1.5 | 0.72 |
| 12x12 | 1.2 | 2.6 | 0.48 | 2.5 | 0.48 |
| 16x16 | 2.3 | 3.5 | 0.66 | 4.2 | 0.55 |
| 24x24 | 3.3 | 4.9 | 0.68 | 6.5 | 0.52 |
| 32x32 | 4.6 | 8.1 | 0.57 | 8.9 | 0.53 |
| 48x48 | 7.3 | 11.6 | 0.62 | 13.1 | 0.56 |
| 64x64 | 9.0 | 17.2 | 0.53 | 18.5 | 0.48 |
| 96x96 | 14.4 | 23.9 | 0.60 | 26.0 | 0.55 |
| 100x100 | 14.6 | 24.2 | 0.60 | 26.0 | 0.56 |
| 128x128 | 18.5 | 29.4 | 0.64 | 34.1 | 0.54 |
| 192x192 | 29.6 | 41.2 | 0.72 | 49.1 | 0.60 |
| 200x200 | 31.0 | 45.7 | 0.68 | 54.1 | 0.57 |
| 256x256 | 37.3 | 49.6 | 0.75 | 60.4 | 0.62 |
| 257x257 | 37.9 | 53.4 | 0.71 | 65.1 | 0.58 |
| 384x384 | 52.8 | 64.1 | 0.82 | 79.0 | 0.67 |
| 500x500 | 61.8 | 73.1 | 0.84 | 92.8 | 0.67 |
| 512x512 | 57.1 | 67.5 | 0.84 | 81.3 | 0.71 |
| 768x768 | 59.4 | 67.7 | 0.88 | 73.7 | 0.81 |
| 1000x1000 | 63.2 | 74.8 | 0.83 | 78.1 | 0.82 |
| 1001x1001 | 62.1 | 73.4 | 0.83 | 76.6 | 0.82 |
| 1024x1024 | 59.0 | 67.1 | 0.88 | 70.7 | 0.83 |
| 1536x1536 | 65.1 | 72.2 | 0.90 | 74.6 | 0.87 |
| 2048x2048 | 68.1 | 75.6 | 0.90 | 76.7 | 0.89 |
| 4096x64 | 52.1 | 36.6 | 1.43 | 75.7 | 0.69 |
| 4096x256 | 92.5 | 66.6 | 1.39 | 102.2 | 0.91 |
| 4096x1024 | 88.0 | 93.4 | 0.94 | 95.8 | 0.92 |
| 10000x8 | 11.6 | 20.2 | 0.58 | 41.8 | 0.28 |
| 10000x100 | 50.7 | 28.5 | 1.78 | 92.4 | 0.55 |
| 10000x1000 | 99.2 | 120.2 | 0.82 | 115.9 | 0.86 |
GEEV float
| n | Eigen GFLOP/s | OpenBLAS GFLOP/s | Eigen ÷ OpenBLAS | Intel oneMKL GFLOP/s | Eigen ÷ Intel oneMKL |
|---|---|---|---|---|---|
| 2 | 2.0 | 0.2 | 8.50 | 0.3 | 7.15 |
| 3 | 0.9 | 0.4 | 2.44 | 0.4 | 2.28 |
| 4 | 1.1 | 0.6 | 1.95 | 0.6 | 1.80 |
| 6 | 1.6 | 1.0 | 1.66 | 1.0 | 1.53 |
| 8 | 2.3 | 1.5 | 1.47 | 1.6 | 1.48 |
| 12 | 3.2 | 2.4 | 1.34 | 2.2 | 1.43 |
| 16 | 4.8 | 3.1 | 1.57 | 3.3 | 1.41 |
| 24 | 6.2 | 4.3 | 1.41 | 4.3 | 1.48 |
| 32 | 8.9 | 5.7 | 1.55 | 5.8 | 1.54 |
| 48 | 12.4 | 7.3 | 1.68 | 8.2 | 1.51 |
| 64 | 13.7 | 8.6 | 1.58 | 9.8 | 1.40 |
| 96 | 17.3 | 9.5 | 1.81 | 11.3 | 1.54 |
| 100 | 16.0 | 9.7 | 1.67 | 11.3 | 1.40 |
| 128 | 18.6 | 11.0 | 1.67 | 14.9 | 1.26 |
| 192 | 22.7 | 22.9 | 0.99 | 25.3 | 0.90 |
| 200 | 21.9 | 24.9 | 0.87 | 25.3 | 0.88 |
| 256 | 23.7 | 30.0 | 0.79 | 34.0 | 0.70 |
| 257 | 22.8 | 30.8 | 0.73 | 32.9 | 0.70 |
| 384 | 20.8 | 46.0 | 0.44 | 51.6 | 0.41 |
| 500 | 22.7 | 55.7 | 0.41 | 64.5 | 0.35 |
| 512 | 23.5 | 34.4 | 0.68 | 39.3 | 0.60 |
| 768 | 23.6 | 61.5 | 0.38 | 71.8 | 0.33 |
| 1000 | 21.8 | 83.4 | 0.26 | 99.4 | 0.22 |
| 1001 | 21.8 | 85.0 | 0.25 | 98.0 | 0.23 |
| 1024 | 14.6 | 68.0 | 0.22 | 77.4 | 0.19 |
GEEV double
| n | Eigen GFLOP/s | OpenBLAS GFLOP/s | Eigen ÷ OpenBLAS | Intel oneMKL GFLOP/s | Eigen ÷ Intel oneMKL |
|---|---|---|---|---|---|
| 2 | 2.1 | 0.2 | 9.63 | 0.6 | 3.41 |
| 3 | 0.8 | 0.3 | 2.29 | 0.7 | 1.17 |
| 4 | 1.1 | 0.5 | 1.95 | 1.0 | 1.04 |
| 6 | 1.3 | 0.9 | 1.53 | 1.6 | 0.81 |
| 8 | 2.0 | 1.2 | 1.54 | 2.3 | 0.90 |
| 12 | 2.7 | 2.0 | 1.38 | 3.2 | 0.82 |
| 16 | 4.0 | 2.8 | 1.43 | 4.2 | 0.95 |
| 24 | 5.8 | 4.0 | 1.41 | 5.6 | 1.05 |
| 32 | 7.0 | 4.8 | 1.41 | 6.5 | 1.12 |
| 48 | 9.3 | 5.9 | 1.57 | 8.1 | 1.14 |
| 64 | 10.0 | 6.6 | 1.52 | 9.1 | 1.09 |
| 96 | 11.6 | 6.8 | 1.68 | 10.3 | 1.15 |
| 100 | 10.7 | 6.9 | 1.56 | 10.5 | 1.02 |
| 128 | 11.8 | 7.5 | 1.55 | 6.9 | 1.72 |
| 192 | 12.3 | 14.4 | 0.87 | 16.9 | 0.72 |
| 200 | 13.8 | 15.5 | 0.88 | 17.1 | 0.81 |
| 256 | 13.4 | 17.4 | 0.77 | 17.9 | 0.75 |
| 257 | 12.8 | 18.4 | 0.70 | 21.4 | 0.59 |
| 384 | 13.5 | 26.4 | 0.51 | 30.3 | 0.45 |
| 500 | 12.2 | 32.5 | 0.37 | 39.6 | 0.31 |
| 512 | 11.4 | 20.1 | 0.57 | 19.4 | 0.58 |
| 768 | 10.3 | 31.6 | 0.33 | 31.7 | 0.32 |
| 1000 | 10.2 | 46.4 | 0.22 | 53.8 | 0.19 |
| 1001 | 10.1 | 45.6 | 0.22 | 52.9 | 0.19 |
| 1024 | 9.2 | 38.9 | 0.24 | 38.4 | 0.24 |
Reproducibility
The MR !2903 harness, original commit 778e20997982c76c7a803d4c958574aa98418ae8, was applied without conflicts onto upstream master ab4f7316dc90a936ba06463d241a765d9ce9e0ba. The first two AXPY runs use combined commit 11cf0c2899fab5c25593e3ef76315dfd9eb1a63b. Subsequent runs use 4e0c35ecbfcc0e0039d4b77d6bfca4ab72ad1da7, which adds only the DOT validation correction and its regression check; the complete Eigen header tree matches that upstream master in every run.
The result files retain all ten samples, compiler flags, library versions, thread caps, affinity and run conditions.
Machine identifiers and installation paths have been anonymized; numerical samples are unchanged.
BLIS was built from upstream release 2.1, commit caf0db6be1202d9c83c79b51e75eceb96aa8b556, with --disable-threading --enable-shared --disable-static skx. The runtime configuration query also reports skx.
Download the machine profile, shape grid, and the result files:
- AXPY, blis
- DOT, blis
- GEMV, blis
- GEMM, blis
- TRSM, blis
- SYRK, blis
- AXPY, mkl
- DOT, mkl
- GEMV, mkl
- GEMM, mkl
- TRSM, mkl
- SYRK, mkl
- POTRF, mkl
- GETRF, mkl
- GEQRF, mkl
- SYEV, mkl
- GESDD, mkl
- GEEV, mkl
- AXPY, openblas
- DOT, openblas
- GEMV, openblas
- GEMM, openblas
- TRSM, openblas
- SYRK, openblas
- POTRF, openblas
- GETRF, openblas
- GEQRF, openblas
- SYEV, openblas
- GESDD, openblas
- GEEV, openblas
The DOT check originally scaled its allowance by the dot-product result, which can nearly cancel.
A 16-element float case was falsely rejected even though both implementations agreed with a 256-bit
MPFR reference to within one float epsilon times the sum of absolute products. The correction uses
the larger of the original allowance and 64 * epsilon * sum(abs(x_i * y_i)) in the untimed check;
the timed kernels are unchanged. Regression checks cover the
captured cancellation case, an incorrect result, zero, and non-finite values. The
MPFR reproducer retains the exact operands.
| Result | Value | Absolute error against MPFR |
|---|---|---|
| MPFR, 256 bits | -0.001443878941188359 | — |
| Eigen, float | -0.001443922519683838 | 4.36e-8 |
| OpenBLAS, float | -0.001443852204829454 | 2.67e-8 |
To reconstruct the measured source, check out upstream master ab4f7316dc90a936ba06463d241a765d9ce9e0ba
and cherry-pick the harness commit 778e20997982c76c7a803d4c958574aa98418ae8, then apply the
DOT validation patch with git am dot-validation.patch
so the benchmark worktree is clean. Install Google Benchmark
1.8.3 built with CMAKE_BUILD_TYPE=Release and the listed libraries. Put the downloaded profile in a
directory named profiles and the shape grid in shapes.json. Configure library discovery as described
in the profile; build on an idle machine, then wait for compilation load to subside before timing.
For example, from the Eigen checkout, select exactly the published GEMM shapes below. First run
the command with --dry-run -j JOBS in place of --no-build to build and list the cells, choosing
JOBS for the available memory and CPUs. Once compilation load subsides, run it as shown to measure:
filter=$(python3 -c 'import json,re; g=json.load(open("shapes.json")); print("/(?:f32|f64)/(?:" + "|".join(map(re.escape,g["GEMM"])) + ")$")')
python3 benchmarks/comparison/run.py --machine xeon-gold-6444y \
--machines-dir profiles --arms openblas --ops GEMM --scalars f32,f64 \
--threads 1 --repetitions 10 --min-time 0.2s --filter "$filter" --no-build
Repeat the build and measurement steps with each operation’s shape list and each library; restrict BLIS to AXPY, DOT, GEMV, GEMM, TRSM and SYRK. The profile pins CPU 2; adapt this to an available physical core on another machine.
Regenerate the charts from the downloaded result files with
scripts/benchmarks/plot_comparison.py --out-dir OUTPUT --cache L1=48K --cache L2=2M --cache L3=45M data/*.json
from the website repository.