Skip to content

Commit 01e88ef

Browse files
Update solvers.md
1 parent a7057c7 commit 01e88ef

File tree

1 file changed

+19
-4
lines changed

1 file changed

+19
-4
lines changed

docs/src/solvers/solvers.md

Lines changed: 19 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -38,14 +38,29 @@ like CUDA.
3838
### Base.LinearAlgebra
3939

4040
These overloads tend to work for many array types, such as `CuArrays` for GPU-accelerated
41-
solving, using the overloads provided by the respective packages.
41+
solving, using the overloads provided by the respective packages. Given that this can be
42+
customized per-package, details given below describe a subset of important arrays
43+
(`Matrix`, `SparseMatrixCSC`, `CuMatrix`, etc.)
4244

4345
- `LUFactorization(pivot=LinearAlgebra.RowMaximum())`: Julia's built in `lu`.
44-
Uses the current BLAS implementation of the user's computer.
46+
- On dense matrices this uses the current BLAS implementation of the user's computer
47+
which by default is OpenBLAS but will use MKL if the user does `using MKL` in their
48+
system.
49+
- On sparse matrices this will use UMFPACK from SuiteSparse. Note that this will not
50+
cache the symbolic factorization.
51+
- On CuMatrix it will use a CUDA-accelerated LU from CuSolver.
52+
- On BandedMatrix and BlockBandedMatrix it will use a banded LU.
4553
- `QRFactorization(pivot=LinearAlgebra.NoPivot(),blocksize=16)`: Julia's built in `qr`.
46-
Uses the current BLAS implementation of the user's computer.
54+
- On dense matrices this uses the current BLAS implementation of the user's computer
55+
which by default is OpenBLAS but will use MKL if the user does `using MKL` in their
56+
system.
57+
- On sparse matrices this will use SPQR from SuiteSparse
58+
- On CuMatrix it will use a CUDA-accelerated QR from CuSolver.
59+
- On BandedMatrix and BlockBandedMatrix it will use a banded QR.
4760
- `SVDFactorization(full=false,alg=LinearAlgebra.DivideAndConquer())`: Julia's built in `svd`.
48-
Uses the current BLAS implementation of the user's computer.
61+
- On dense matrices this uses the current BLAS implementation of the user's computer
62+
which by default is OpenBLAS but will use MKL if the user does `using MKL` in their
63+
system.
4964
- `GenericFactorization(fact_alg)`: Constructs a linear solver from a generic
5065
factorization algorithm `fact_alg` which complies with the Base.LinearAlgebra
5166
factorization API.

0 commit comments

Comments
 (0)