Mentions légales du service

Skip to content
Snippets Groups Projects
Commit 17c83e93 authored by PRUVOST Florent's avatar PRUVOST Florent
Browse files

organize linear algebra routines

parent d88fe89e
No related branches found
No related tags found
No related merge requests found
# This file is part of the Chameleon User's Guide.
# Copyright (C) 2017 Inria
# See the file ../users_guide.org for copying conditions.
#+OPTIONS: tex:t
** Linking an external application with Chameleon libraries
Compilation and link with Chameleon libraries have been tested with
......@@ -145,8 +146,8 @@
* POSV: solve linear systems with symmetric positive-definite matrix
* GESV_INCPIV: solve linear systems with general matrix
* GELS: linear least squares with general matrix
* GELS_HQR:
* GELS_SYSTOLIC:
* GELS_HQR: gels with hierarchical tree
* GELS_SYSTOLIC: gels with systolic tree
* *timing*: contains timing drivers to assess performances of
Chameleon routines. There are two sets of executables, those who
do not use the tile interface and those who do (with _tile in the
......@@ -207,10 +208,10 @@
* GESV_INCPIV: solve linear system for a general matrix using the tile LU algorithm with partial tile pivoting with row interchanges matrix
* GEQRF: QR factorization of a general matrix
* GELQF: LQ factorization of a general matrix
* QEQRF_HQR
* QEQRF_HQR: GEQRF with hierarchical tree
* QEQRS: solve linear systems using a QR factorization
* GELS: solves overdetermined or underdetermined linear systems involving a general matrix using the QR or the LQ factorization
* GESVD
* GESVD: general matrix singular value decomposition
*** Execution trace using StarPU
<<sec:trace>>
......@@ -744,98 +745,109 @@
with the Chameleon library. For details about these functions
please refer to the doxygen documentation. /name/ can be one of the
following:
* geadd: matrix matrix addition
* gelqf: LQ factorization
* gelqf_param: gelqf with hqr
* gelqs: computes a minimum-norm solution min || A*X - B || using
the LQ factorization
* gelqs_param: gelqs with hqr
* gels: solves overdetermined or underdetermined linear systems
using LQ or QR
* gels_param: gels with hqr
* gemm: matrix matrix multiply and addition
* geqrf: QR factorization
* geqrf_param: geqrf with hqr
* geqrs: computes a minimum-norm solution min || A*X - B || using
the RQ factorization
* geqrs_param: geqrs with hqr
* gesv_incpiv: linear systems solving with LU factorization and
partial pivoting
* gesv_nopiv: linear systems solving with LU factorization and
without pivoting
* gesvd: singular value decomposition
* getrf_incpiv: LU factorization with partial pivoting
* getrf_nopiv: LU factorization without pivoting
* getrs_incpiv: linear systems solving using existing LU
factorization with partial pivoting
* getrs_nopiv: linear systems solving using existing LU
factorization without pivoting
* hemm: gemm with A Hermitian
* herk: rank k operations with A Hermitian
* her2k: rank 2k operations with A Hermitian
* heevd: eigenvalues/eigenvectors computation with A Hermitian
* hetrd: reduces a complex Hermitian matrix A to real symmetric
tridiagonal form S
* lacpy: copy matrix into another
* lange: computes norm of a matrix (Max, One, Inf, Frobenius)
* lanhe: lange with A Hermitian
* lansy: lange with A symmetric
* lantr: lange with A triangular
* lascal: scales a matrix
* laset: copy the triangular part of a matrix into another, set a
value for the diagonal and off-diagonal part
* lauum: computes the product U * U' or L' * L, where the
triangular factor U or L is stored in the upper or lower
triangular part of the array A
* plghe: generates a random Hermitian matrix
* plgsy: generates a random symmetrix matrix
* plrnt: generates a random matrix
* posv: linear systems solving using Cholesky factorization
* potrf: Cholesky factorization
* potri: computes the inverse of a complex Hermitian positive
definite matrix A using the Cholesky factorization A
* potrimm:
* potrs: linear systems solving using existing Cholesky
factorization
* symm: gemm with A symmetric
* syrk: rank k operations with A symmetric
* syr2k: rank 2k with A symmetric
* sysv: linear systems solving using Cholesky decomposition with
A symmetric
* sytrf: Cholesky decomposition with A symmetric
* sytrs: linear systems solving using existing Cholesky
decomposition with A symmetric
* tpgqrt: generates a partial Q matrix formed with a blocked QR
factorization of a "triangular-pentagonal" matrix C, which is
composed of a unused triangular block and a pentagonal block V,
using the compact representation for Q. See tpqrt to
generate V
* tpqrt: computes a blocked QR factorization of a
"triangular-pentagonal" matrix C, which is composed of a
triangular block A and a pentagonal block B, using the compact
representation for Q
* tradd: trapezoidal matrices addition
* trmm: gemm with A triangular
* trsm: computes triangular solve
* trsmpl: performs the forward substitution step of solving a
system of linear equations after the tile LU factorization of
the matrix
* trsmrv:
* trtri: computes the inverse of a complex upper or lower triangular matrix A
* unglq: generates an M-by-N matrix Q with orthonormal rows,
which is defined as the first M rows of a product of the
elementary reflectors returned by MORSE_zgelqf
* unglq_param: unglq with hqr
* ungqr: generates an M-by-N matrix Q with orthonormal columns,
which is defined as the first N columns of a product of the
elementary reflectors returned by MORSE_zgeqrf
* ungqr_param: ungqr with hqr
* unmlq: overwrites C with Q*C or C*Q or equivalent operations
with transposition on conjugate on C (see doxygen
documentation)
* unmlq_param: unmlq with hqr
* unmqr: similar to unmlq (see doxygen documentation)
* unmqr_param: unmqr with hqr
* *BLAS 2/3 routines*
* gemm: matrix matrix multiply and addition
* hemm: gemm with A Hermitian
* herk: rank k operations with A Hermitian
* her2k: rank 2k operations with A Hermitian
* lauum: computes the product U * U' or L' * L, where the
triangular factor U or L is stored in the upper or lower
triangular part of the array A
* symm: gemm with A symmetric
* syrk: rank k operations with A symmetric
* syr2k: rank 2k with A symmetric
* trmm: gemm with A triangular
* *Triangular solving*
* trsm: computes triangular solve
* trsmpl: performs the forward substitution step of solving a
system of linear equations after the tile LU factorization of
the matrix
* trsmrv:
* trtri: computes the inverse of a complex upper or lower triangular matrix A
* *$LL^T$ (Cholesky) routines*
* posv: linear systems solving using Cholesky factorization
* potrf: Cholesky factorization
* potri: computes the inverse of a complex Hermitian positive
definite matrix A using the Cholesky factorization A
* potrimm:
* potrs: linear systems solving using existing Cholesky
factorization
* sysv: linear systems solving using Cholesky decomposition with
A symmetric
* sytrf: Cholesky decomposition with A symmetric
* sytrs: linear systems solving using existing Cholesky
decomposition with A symmetric
* *$LU$ routines*
* gesv_incpiv: linear systems solving with LU factorization and
partial pivoting
* gesv_nopiv: linear systems solving with LU factorization and
without pivoting
* getrf_incpiv: LU factorization with partial pivoting
* getrf_nopiv: LU factorization without pivoting
* getrs_incpiv: linear systems solving using existing LU
factorization with partial pivoting
* getrs_nopiv: linear systems solving using existing LU
factorization without pivoting
* *$QR/LQ$ routines*
* gelqf: LQ factorization
* gelqf_param: gelqf with hqr
* gelqs: computes a minimum-norm solution min || A*X - B || using
the LQ factorization
* gelqs_param: gelqs with hqr
* gels: Uses QR or LQ factorization to solve a overdetermined or
underdetermined linear system with full rank matrix
* gels_param: gels with hqr
* geqrf: QR factorization
* geqrf_param: geqrf with hqr
* geqrs: computes a minimum-norm solution min || A*X - B || using
the RQ factorization
* hetrd: reduces a complex Hermitian matrix A to real symmetric
tridiagonal form S
* geqrs_param: geqrs with hqr
* tpgqrt: generates a partial Q matrix formed with a blocked QR
factorization of a "triangular-pentagonal" matrix C, which is
composed of a unused triangular block and a pentagonal block V,
using the compact representation for Q. See tpqrt to
generate V
* tpqrt: computes a blocked QR factorization of a
"triangular-pentagonal" matrix C, which is composed of a
triangular block A and a pentagonal block B, using the compact
representation for Q
* unglq: generates an M-by-N matrix Q with orthonormal rows,
which is defined as the first M rows of a product of the
elementary reflectors returned by MORSE_zgelqf
* unglq_param: unglq with hqr
* ungqr: generates an M-by-N matrix Q with orthonormal columns,
which is defined as the first N columns of a product of the
elementary reflectors returned by MORSE_zgeqrf
* ungqr_param: ungqr with hqr
* unmlq: overwrites C with Q*C or C*Q or equivalent operations
with transposition on conjugate on C (see doxygen
documentation)
* unmlq_param: unmlq with hqr
* unmqr: similar to unmlq (see doxygen documentation)
* unmqr_param: unmqr with hqr
* *EVD/SVD*
* gesvd: singular value decomposition
* heevd: eigenvalues/eigenvectors computation with A Hermitian
* *Extra routines*
* *Norms*
* lange: computes norm of a matrix (Max, One, Inf, Frobenius)
* lanhe: lange with A Hermitian
* lansy: lange with A symmetric
* lantr: lange with A triangular
* *Random matrices generation*
* plghe: generates a random Hermitian matrix
* plgsy: generates a random symmetrix matrix
* plrnt: generates a random matrix
* *Others*
* geadd: general matrix matrix addition
* lacpy: copy matrix into another
* lascal: scales a matrix
* laset: copy the triangular part of a matrix into another, set a
value for the diagonal and off-diagonal part
* tradd: trapezoidal matrices addition
**** Options routines
Enable MORSE feature.
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment