SLATE Coverage ================================================================================ Basic Linear Algebra | status ------------------------------------|------------------------------------------- Level 1 BLAS | no Level 2 BLAS | use Level 3 Level 3 BLAS | yes optimizations for Level 2-2.5 | gemm, hemm, trsm when A >> C Level 2-like routines | add, scale, scale_row_col, set Matrix norms ️ | yes ———————————— | ———————————— **Linear systems (Ax = b)** | **status** LU, partial pivoting (PP) | yes LU, communication avoiding (CA) | in progress (2022) LU, band (PP) | yes LU, non-pivoting | yes Cholesky | yes Cholesky, band | yes Symmetric indefinite (block Aasen) | prototype, CPU only Mixed precision (single-double) | yes (LU, Cholesky) Inverses | yes (LU, Cholesky) Condition estimate | no ———————————— | ———————————— **Least squares (Ax ≈ b)** | **status** QR | yes optimizations for tall-skinny | yes Cholesky QR | yes LQ | yes Least squares solver | yes ———————————— | ———————————— **SVD and eigenvalues** | **status** Singular value decomposition (SVD) | yes, values only Hermitian eigenvalues | yes, values only vectors | in progress (2022) Generalized Hermitian eigenvalues | yes, values only Polar decomposition (QDWH) | in progress Non-symmetric eigenvalues | no current plan ———————————— | ———————————— **Platforms** | **status** MPI | yes (≥ 2.0) GPU-aware MPI | yes, experimental OpenMP | yes (≥ 4.5) CUDA for NVIDIA GPUs | yes HIP for AMD GPUs | yes OpenMP offload for Intel GPUs | in progress (2022) ———————————— | ———————————— **Compilers** | **status** GNU g++ compiler | yes (≥ 7.3 tested; 6.4 fails) Clang compiler | yes (≥ 9.0 tested) Intel icpc compiler | yes IBM xlc compiler | no (C++17 not supported) Cray compiler | yes (clang v14 tested)