Dense Factorization Benchmark

sTiles as a dense Cholesky solver, compared with PLASMA and LAPACK (and the sparse direct solvers) on dense symmetric positive definite matrices.

Beyond sparse problems, the sTiles tile engine is also a competitive dense Cholesky solver. The matrices below are fully dense SPD systems of order n = 2,000, 5,000, and 10,000. sTiles is compared against the reference dense libraries PLASMA and LAPACK, and, for context, against the sparse direct solvers. The fastest result in each column is highlighted.

Performance (GFLOP/s)
Cholesky throughput; higher is better (fastest per size highlighted). sTiles is 1.98×, 1.65×, 1.44× faster than optimized PLASMA and 9.58×, 2.33×, 1.33× faster than LAPACK across n = 2,000 / 5,000 / 10,000.
Solvern = 2,000n = 5,000n = 10,000
sTiles this work94413171301
PLASMA (opt)476798904
LAPACK99566975
Full thread sweeps for the dense libraries (the reference sparse solvers were run at a single configuration; their best times are in the summary below).
Factorization time (s) by thread count · n = 2,000
Solver1248163240
sTiles this work0.058140.0312550.0157430.0077570.0046930.0031940.002824
PLASMA (nb 80)0.05950.04220.02380.01370.00830.00690.0082
PLASMA (nb 120)0.05690.03090.0160.01150.00740.00560.0119
LAPACK0.4752320.0649980.0380190.0313510.0270480.0396010.031574
Factorization time (s) by thread count · n = 5,000
Solver1248163240
sTiles this work0.9647680.5044070.2536350.1288590.0626030.0348670.031635
PLASMA (nb 80)1.05190.6610.35030.18150.110.1470.1545
PLASMA (nb 120)0.97270.58530.30230.15760.07860.05570.0522
LAPACK0.7862660.3959790.2255850.1463190.1023340.0825230.073586
Factorization time (s) by thread count · n = 10,000
Solver1248163240
sTiles this work7.968494.20652.08641n/a7.274357.28460.256141
PLASMA (nb 80)8.1815.8932.82071.36720.88681.46621.4155
PLASMA (nb 120)7.5294.24642.19451.16710.65330.37940.3689
LAPACK5.650032.769381.471130.9078870.5856840.3896160.34194
fastest thread count for that solverfastest overall
Best factorization time, all solvers (s)
Numerical Cholesky factorization, seconds (fastest per size highlighted). Dense solvers (sTiles, PLASMA, LAPACK) measured on node cn603-04; the sparse solvers on cn512-12.
Solvern = 2,000n = 5,000n = 10,000
sTiles this work0.0028240.0316350.256141
PLASMA (nb 80)0.00690.110.8868
PLASMA (nb 120)0.00560.05220.3689
LAPACK0.0270480.0735860.34194
PARDISO0.009780.0673090.602475
MUMPS0.0371980.3439691.5774
CHOLMOD0.0309150.380722.08722
PaStiX0.1856251.398816.09987
symPACK0.0470360.6319154.94403
Analysis (symbolic) time (s)
Analysis / symbolic phase, seconds, all measured on node cn512-12. PLASMA and LAPACK have no separate analysis phase for dense matrices.
Solvern = 2,000n = 5,000n = 10,000
sTiles this work0.4292.50710.921
PARDISO0.2341.898.4
MUMPS0.0320.2651.206
CHOLMOD0.0880.9965.389
PaStiX0.4053.23413.708
symPACK0.4192.59912.23