|
PLASMA
2.4.5
PLASMA - Parallel Linear Algebra for Scalable Multi-core Architectures
|

Go to the source code of this file.
Macros | |
| #define | plasma_zdesc_alloc(descA, mb, nb, lm, ln, i, j, m, n, free) |
| #define | plasma_zooplap2tile(descA, A, mb, nb, lm, ln, i, j, m, n, free) |
| #define | plasma_ziplap2tile(descA, A, mb, nb, lm, ln, i, j, m, n) |
| #define | plasma_zooptile2lap(descA, A, mb, nb, lm, ln) |
| #define | plasma_ziptile2lap(descA, A, mb, nb, lm, ln) |
PLASMA auxiliary routines PLASMA is a software package provided by Univ. of Tennessee, Univ. of California Berkeley and Univ. of Colorado Denver
Definition in file compute_z.h.
| #define plasma_zdesc_alloc | ( | descA, | |
| mb, | |||
| nb, | |||
| lm, | |||
| ln, | |||
| i, | |||
| j, | |||
| m, | |||
| n, | |||
| free | |||
| ) |
Macro for matrix conversion / Lapack interface
Definition at line 20 of file compute_z.h.
| #define plasma_ziplap2tile | ( | descA, | |
| A, | |||
| mb, | |||
| nb, | |||
| lm, | |||
| ln, | |||
| i, | |||
| j, | |||
| m, | |||
| n | |||
| ) |
Definition at line 47 of file compute_z.h.
| #define plasma_ziptile2lap | ( | descA, | |
| A, | |||
| mb, | |||
| nb, | |||
| lm, | |||
| ln | |||
| ) |
Definition at line 65 of file compute_z.h.
| #define plasma_zooplap2tile | ( | descA, | |
| A, | |||
| mb, | |||
| nb, | |||
| lm, | |||
| ln, | |||
| i, | |||
| j, | |||
| m, | |||
| n, | |||
| free | |||
| ) |
Definition at line 30 of file compute_z.h.
| #define plasma_zooptile2lap | ( | descA, | |
| A, | |||
| mb, | |||
| nb, | |||
| lm, | |||
| ln | |||
| ) |
Definition at line 57 of file compute_z.h.
| void plasma_pzbarrier_pnl2tl_quark | ( | PLASMA_desc | A, |
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
Barrier from panels to tiles
Definition at line 61 of file pzbarrier.c.
References CORE_foo2_quark(), CORE_foo_quark(), INOUT, INPUT, plasma_desc_t::mb, plasma_desc_t::mt, plasma_desc_t::nb, plasma_desc_t::nt, plasma_context_self(), PLASMA_SUCCESS, plasma_context_struct::quark, QUARK_Insert_Task(), plasma_sequence_t::quark_sequence, QUARK_Task_Flag_Set(), Quark_Task_Flags_Initializer, plasma_sequence_t::status, and TASK_SEQUENCE.

| void plasma_pzbarrier_row2tl_quark | ( | PLASMA_desc | A, |
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
Barrier from panels to tiles
Definition at line 128 of file pzbarrier.c.
References CORE_foo2_quark(), CORE_foo_quark(), INOUT, INPUT, plasma_desc_t::mb, plasma_desc_t::mt, plasma_desc_t::nb, plasma_desc_t::nt, plasma_context_self(), PLASMA_SUCCESS, plasma_context_struct::quark, QUARK_Insert_Task(), plasma_sequence_t::quark_sequence, QUARK_Task_Flag_Set(), Quark_Task_Flags_Initializer, plasma_sequence_t::status, and TASK_SEQUENCE.

| void plasma_pzbarrier_tl2pnl_quark | ( | PLASMA_desc | A, |
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
Barrier from tiles to panels
Definition at line 25 of file pzbarrier.c.
References CORE_foo2_quark(), CORE_foo_quark(), GATHERV, INOUT, plasma_desc_t::mb, plasma_desc_t::mt, plasma_desc_t::nb, plasma_desc_t::nt, plasma_context_self(), PLASMA_SUCCESS, plasma_context_struct::quark, QUARK_Insert_Task(), plasma_sequence_t::quark_sequence, QUARK_Task_Flag_Set(), Quark_Task_Flags_Initializer, plasma_sequence_t::status, and TASK_SEQUENCE.

| void plasma_pzbarrier_tl2row_quark | ( | PLASMA_desc | A, |
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
Barrier from tiles to panels
Definition at line 92 of file pzbarrier.c.
References CORE_foo2_quark(), CORE_foo_quark(), GATHERV, INOUT, plasma_desc_t::mb, plasma_desc_t::mt, plasma_desc_t::nb, plasma_desc_t::nt, plasma_context_self(), PLASMA_SUCCESS, plasma_context_struct::quark, QUARK_Insert_Task(), plasma_sequence_t::quark_sequence, QUARK_Task_Flag_Set(), Quark_Task_Flags_Initializer, plasma_sequence_t::status, and TASK_SEQUENCE.

| void plasma_pzgbrdb_quark | ( | PLASMA_enum | uplo, |
| PLASMA_desc | A, | ||
| double * | D, | ||
| double * | E, | ||
| PLASMA_desc | T, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
Parallel Reduction from BAND Bidiagonal to the final condensed form - dynamic scheduler
Definition at line 26 of file pzgbrdb.c.
References A, C, cabs(), conj(), creal(), DEP, plasma_desc_t::dtyp, plasma_desc_t::lm, plasma_desc_t::m, plasma_desc_t::mb, min, plasma_desc_t::n, plasma_context_self(), plasma_element_size(), plasma_sequence_flush(), plasma_shared_alloc(), plasma_shared_free(), PLASMA_SUCCESS, PlasmaComplexDouble, PlasmaInteger, PlasmaLower, plasma_context_struct::quark, QUARK_Barrier(), QUARK_CORE_zbrdalg(), plasma_sequence_t::quark_sequence, QUARK_Task_Flag_Set(), Quark_Task_Flags_Initializer, plasma_sequence_t::status, TASK_SEQUENCE, TAU, and V.

| void plasma_pzgeadd | ( | plasma_context_t * | plasma | ) |
Declarations of parallel functions (static scheduling) - alphabetical order
Definition at line 23 of file pzgeadd.c.
References A, B, BLKLDD, CORE_zgeadd(), plasma_desc_t::m, plasma_desc_t::mb, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, PLASMA_RANK, PLASMA_SIZE, PLASMA_SUCCESS, plasma_unpack_args_5, and plasma_sequence_t::status.

| void plasma_pzgeadd_quark | ( | PLASMA_Complex64_t | alpha, |
| PLASMA_desc | A, | ||
| PLASMA_desc | B, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
Declarations of parallel functions (dynamic scheduling) - alphabetical order
Definition at line 72 of file pzgeadd.c.
References B, BLKLDD, plasma_desc_t::m, plasma_desc_t::mb, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, plasma_context_self(), PLASMA_SUCCESS, plasma_context_struct::quark, QUARK_CORE_zgeadd(), plasma_sequence_t::quark_sequence, QUARK_Task_Flag_Set(), Quark_Task_Flags_Initializer, plasma_sequence_t::status, and TASK_SEQUENCE.

| void plasma_pzgelqf | ( | plasma_context_t * | plasma | ) |
Parallel tile LQ factorization - static scheduling
Definition at line 24 of file pzgelqf.c.
References A, BLKLDD, CORE_zgelqt(), CORE_ztslqt(), CORE_ztsmlq(), CORE_zunmlq(), plasma_desc_t::dtyp, plasma_desc_t::m, plasma_desc_t::mb, min, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, PLASMA_IB, plasma_private_alloc(), plasma_private_free(), PLASMA_RANK, PLASMA_SIZE, PLASMA_SUCCESS, plasma_unpack_args_4, PlasmaConjTrans, PlasmaRight, ss_cond_set, ss_cond_wait, ss_finalize, ss_init, plasma_sequence_t::status, and T.


| void plasma_pzgelqf_quark | ( | PLASMA_desc | A, |
| PLASMA_desc | T, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
Parallel tile LQ factorization - dynamic scheduling
Definition at line 137 of file pzgelqf.c.
References A, BLKLDD, plasma_desc_t::m, plasma_desc_t::mb, min, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, plasma_context_self(), PLASMA_IB, PLASMA_SUCCESS, PlasmaConjTrans, PlasmaRight, plasma_context_struct::quark, QUARK_CORE_zgelqt(), QUARK_CORE_ztslqt(), QUARK_CORE_ztsmlq(), QUARK_CORE_zunmlq(), plasma_sequence_t::quark_sequence, QUARK_Task_Flag_Set(), Quark_Task_Flags_Initializer, plasma_sequence_t::status, T, and TASK_SEQUENCE.


| void plasma_pzgelqfrh_quark | ( | PLASMA_desc | A, |
| PLASMA_desc | T, | ||
| int | BS, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
Parallel tile LQ factorization (reduction Householder) - dynamic scheduling
Definition at line 25 of file pzgelqfrh.c.
References A, BLKLDD, plasma_desc_t::m, plasma_desc_t::mb, min, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, plasma_context_self(), PLASMA_IB, PLASMA_SUCCESS, PlasmaConjTrans, PlasmaRight, plasma_context_struct::quark, QUARK_CORE_zgelqt(), QUARK_CORE_ztslqt(), QUARK_CORE_ztsmlq(), QUARK_CORE_zttlqt(), QUARK_CORE_zttmlq(), QUARK_CORE_zunmlq(), plasma_sequence_t::quark_sequence, QUARK_Task_Flag_Set(), Quark_Task_Flags_Initializer, plasma_sequence_t::status, T, T2, and TASK_SEQUENCE.

| void plasma_pzgemm | ( | plasma_context_t * | plasma | ) |
Parallel tile matrix-matrix multiplication - static scheduling
Definition at line 24 of file pzgemm.c.
References A, B, BLKLDD, C, CORE_zgemm(), plasma_desc_t::m, plasma_desc_t::mb, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, PLASMA_RANK, PLASMA_SIZE, PLASMA_SUCCESS, plasma_unpack_args_9, PlasmaNoTrans, and plasma_sequence_t::status.


| void plasma_pzgemm_quark | ( | PLASMA_enum | transA, |
| PLASMA_enum | transB, | ||
| PLASMA_Complex64_t | alpha, | ||
| PLASMA_desc | A, | ||
| PLASMA_desc | B, | ||
| PLASMA_Complex64_t | beta, | ||
| PLASMA_desc | C, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
Parallel tile matrix-matrix multiplication - dynamic scheduling
Definition at line 149 of file pzgemm.c.
References B, BLKLDD, C, plasma_desc_t::m, plasma_desc_t::mb, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, plasma_context_self(), PLASMA_SUCCESS, PlasmaNoTrans, plasma_context_struct::quark, QUARK_CORE_zgemm(), plasma_sequence_t::quark_sequence, QUARK_Task_Flag_Set(), Quark_Task_Flags_Initializer, plasma_sequence_t::status, and TASK_SEQUENCE.


| void plasma_pzgeqrf | ( | plasma_context_t * | plasma | ) |
Parallel tile QR factorization - static scheduling
Definition at line 24 of file pzgeqrf.c.
References A, BLKLDD, CORE_zgeqrt(), CORE_ztsmqr(), CORE_ztsqrt(), CORE_zunmqr(), plasma_desc_t::dtyp, plasma_desc_t::m, plasma_desc_t::mb, min, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, PLASMA_IB, plasma_private_alloc(), plasma_private_free(), PLASMA_RANK, PLASMA_SIZE, PLASMA_SUCCESS, plasma_unpack_args_4, PlasmaConjTrans, PlasmaLeft, ss_cond_set, ss_cond_wait, ss_finalize, ss_init, plasma_sequence_t::status, and T.


| void plasma_pzgeqrf_quark | ( | PLASMA_desc | A, |
| PLASMA_desc | T, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
Parallel tile QR factorization - dynamic scheduling
Definition at line 137 of file pzgeqrf.c.
References A, BLKLDD, plasma_desc_t::m, plasma_desc_t::mb, min, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, plasma_context_self(), PLASMA_IB, PLASMA_SUCCESS, PlasmaConjTrans, PlasmaLeft, plasma_context_struct::quark, QUARK_CORE_zgeqrt(), QUARK_CORE_ztsmqr(), QUARK_CORE_ztsqrt(), QUARK_CORE_zunmqr(), plasma_sequence_t::quark_sequence, QUARK_Task_Flag_Set(), Quark_Task_Flags_Initializer, plasma_sequence_t::status, T, and TASK_SEQUENCE.


| void plasma_pzgeqrfrh_quark | ( | PLASMA_desc | A, |
| PLASMA_desc | T, | ||
| int | BS, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
Parallel tile QR factorization (reduction Householder) - dynamic scheduling
Definition at line 25 of file pzgeqrfrh.c.
References A, BLKLDD, plasma_desc_t::m, plasma_desc_t::mb, min, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, plasma_context_self(), PLASMA_IB, PLASMA_SUCCESS, PlasmaConjTrans, PlasmaLeft, plasma_context_struct::quark, QUARK_CORE_zgeqrt(), QUARK_CORE_ztsmqr(), QUARK_CORE_ztsqrt(), QUARK_CORE_zttmqr(), QUARK_CORE_zttqrt(), QUARK_CORE_zunmqr(), plasma_sequence_t::quark_sequence, QUARK_Task_Flag_Set(), Quark_Task_Flags_Initializer, plasma_sequence_t::status, T, T2, and TASK_SEQUENCE.

| void plasma_pzgerbb | ( | plasma_context_t * | plasma | ) |
Parallel tile BAND Bidiagonal Reduction - dynamic scheduler Could be optimized by using the algorithms from Trefethen book
WARNING: do never call this function because unmqr and unmlq are not implementing all the cases required in static.
Definition at line 26 of file pzgerbb.c.
References A, plasma_desc_t::m, plasma_desc_t::mb, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, plasma_desc_submatrix(), plasma_pzgelqf(), plasma_pzgeqrf(), plasma_pzunmlq(), plasma_pzunmqr(), plasma_static_call_4, plasma_static_call_7, PLASMA_SUCCESS, plasma_unpack_args_4, PlasmaConjTrans, PlasmaLeft, PlasmaRight, plasma_sequence_t::status, and T.


| void plasma_pzgerbb_quark | ( | PLASMA_desc | A, |
| PLASMA_desc | T, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
Parallel tile BAND Bidiagonal Reduction - dynamic scheduler Could be optimized by using the algorithms from Trefethen book
Definition at line 127 of file pzgerbb.c.
References plasma_desc_t::m, plasma_desc_t::mb, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, plasma_desc_submatrix(), plasma_pzgelqf_quark(), plasma_pzgeqrf_quark(), plasma_pzunmlq_quark(), plasma_pzunmqr_quark(), PlasmaConjTrans, PlasmaLeft, and PlasmaRight.

| void plasma_pzgerbbrh_quark | ( | PLASMA_desc | A, |
| PLASMA_desc | T, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
| void plasma_pzgerbh_quark | ( | PLASMA_desc | A, |
| PLASMA_desc | T, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
| void plasma_pzgetmi2 | ( | plasma_context_t * | plasma | ) |
plasma_pzgetmi2 - realises nprob independant transpositions. Each subproblem is a tile of mb-by-nb elements. This function use an extra space of PLASMA_SIZE*(mb*nb).
| [in] | plasma | Plasma context to which this call belong to. |
Definition at line 40 of file pzgetmi2.c.
References A, CORE_zgetrip(), plasma_private_alloc(), plasma_private_free(), PLASMA_RANK, PLASMA_SIZE, PLASMA_SUCCESS, plasma_unpack_args_10, PlasmaComplexDouble, plasma_sequence_t::status, and storev.

| void plasma_pzgetmi2_quark | ( | PLASMA_enum | idep, |
| PLASMA_enum | odep, | ||
| PLASMA_enum | storev, | ||
| int | m, | ||
| int | n, | ||
| int | mb, | ||
| int | nb, | ||
| PLASMA_Complex64_t * | A, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
plasma_pzgetmi2_quark - realises nprob independant transpositions. Each subproblem is a tile of mb-by-nb elements. This function use an extra space of PLASMA_SIZE*(mb*nb). This is a maximum in case of dynamic scheduling.
| [in] | idep | PlasmaIPT_Nodep: No fake dependencies are added. PlasmaIPT_Panel: A gatherv is added on each panel and panel size is m*nb. PlasmaIPT_All: A gatherv is added on the whole matrix. |
| [in] | odep | PlasmaIPT_Nodep: No fake dependencies are added. PlasmaIPT_Panel: A gatherv is added on each panel and panel size is m*nb. PlasmaIPT_All: A gatherv is added on the whole matrix. |
| [in] | storev | PlasmaColumnWise: Data stored in column major. PlasmaRowWise: Data stored in row major. |
| [in] | m | Number of row of A if tiles are sorted in column major format, number of columns otherwise. |
| [in] | n | Number of columns of A if tiles are sorted in column major format, number of rows otherwise. |
| [in] | mb | Number of rows in each individual subproblem if storev == PlasmaColumnWise, number of columns otherwise. mmb must be 0. |
| [in] | nb | Number of columns in each individual subproblem if storev == PlasmaColumnWise, number of rows otherwise. nnb must be 0. |
| [in,out] | A | Matrix of size m*n. |
| [in] | sequence | Identifies the sequence of function calls that this call belongs to (for completion checks and exception handling purposes). |
| [out] | request | Identifies this function call (for exception handling purposes). |
Definition at line 128 of file pzgetmi2.c.
References GATHERV, INOUT, INPUT, plasma_context_self(), PLASMA_SUCCESS, PlasmaColumnwise, PlasmaIPT_All, PlasmaIPT_NoDep, PlasmaIPT_Panel, plasma_context_struct::quark, QUARK_CORE_zgetrip(), QUARK_CORE_zgetrip_f1(), QUARK_CORE_zgetrip_f2(), plasma_sequence_t::quark_sequence, QUARK_Task_Flag_Set(), Quark_Task_Flags_Initializer, plasma_sequence_t::status, and TASK_SEQUENCE.

| void plasma_pzgetrf_incpiv | ( | plasma_context_t * | plasma | ) |
Parallel tile LU factorization - static scheduling
Definition at line 25 of file pzgetrf_incpiv.c.
References A, BLKLDD, CORE_zgessm(), CORE_zgetrf_incpiv(), CORE_zssssm(), CORE_ztstrf(), plasma_desc_t::dtyp, IPIV, L, plasma_desc_t::m, plasma_desc_t::mb, min, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, PLASMA_IB, plasma_private_alloc(), plasma_private_free(), PLASMA_RANK, plasma_request_fail(), PLASMA_SIZE, PLASMA_SUCCESS, plasma_unpack_args_5, ss_abort, ss_aborted, ss_cond_set, ss_cond_wait, ss_finalize, ss_init, and plasma_sequence_t::status.


| void plasma_pzgetrf_incpiv_quark | ( | PLASMA_desc | A, |
| PLASMA_desc | L, | ||
| int * | IPIV, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
Parallel tile LU factorization - dynamic scheduling
Definition at line 143 of file pzgetrf_incpiv.c.
References A, BLKLDD, IPIV, L, plasma_desc_t::m, plasma_desc_t::mb, min, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, plasma_context_self(), PLASMA_IB, PLASMA_SUCCESS, plasma_context_struct::quark, QUARK_CORE_zgessm(), QUARK_CORE_zgetrf_incpiv(), QUARK_CORE_zssssm(), QUARK_CORE_ztstrf(), plasma_sequence_t::quark_sequence, QUARK_Task_Flag_Set(), Quark_Task_Flags_Initializer, plasma_sequence_t::status, and TASK_SEQUENCE.

| void plasma_pzgetrf_reclap_quark | ( | PLASMA_desc | A, |
| int * | IPIV, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
| void plasma_pzgetrf_rectil_quark | ( | PLASMA_desc | A, |
| int * | IPIV, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
| void plasma_pzhbrdt_quark | ( | PLASMA_enum | uplo, |
| PLASMA_desc | A, | ||
| double * | D, | ||
| double * | E, | ||
| PLASMA_desc | T, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
Parallel Reduction from BAND tridiagonal to the final condensed form - dynamic scheduler
Definition at line 28 of file pzhbrdt.c.
References A, C, cabs(), creal(), DEP, plasma_desc_t::dtyp, lapack_const, plasma_desc_t::lm, plasma_desc_t::m, plasma_desc_t::mb, min, plasma_context_self(), plasma_element_size(), plasma_sequence_flush(), plasma_shared_alloc(), plasma_shared_free(), PLASMA_SUCCESS, PlasmaComplexDouble, PlasmaInteger, PlasmaLower, plasma_context_struct::quark, QUARK_Barrier(), QUARK_CORE_ztrdalg(), plasma_sequence_t::quark_sequence, QUARK_Task_Flag_Set(), Quark_Task_Flags_Initializer, plasma_sequence_t::status, and TASK_SEQUENCE.

| void plasma_pzhegst_quark | ( | PLASMA_enum | itype, |
| PLASMA_enum | uplo, | ||
| PLASMA_desc | A, | ||
| PLASMA_desc | B, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
Parallel Transformation to standard eigenvalue problem - dynamic scheduler
Definition at line 22 of file pzhegst.c.
References B, BLKLDD, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, plasma_context_self(), plasma_desc_submatrix(), plasma_pzhemm_quark(), plasma_pzher2k_quark(), plasma_pztrmm_quark(), plasma_pztrsm_quark(), PLASMA_SUCCESS, PlasmaConjTrans, PlasmaLeft, PlasmaLower, PlasmaNonUnit, PlasmaNoTrans, PlasmaRight, plasma_context_struct::quark, QUARK_CORE_zhegst(), plasma_sequence_t::quark_sequence, QUARK_Task_Flag_Set(), Quark_Task_Flags_Initializer, plasma_sequence_t::status, and TASK_SEQUENCE.

| void plasma_pzherbt_quark | ( | PLASMA_enum | uplo, |
| PLASMA_desc | A, | ||
| PLASMA_desc | T, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
Parallel tile BAND Tridiagonal Reduction - dynamic scheduler
Definition at line 23 of file pzherbt.c.
References A, BLKLDD, plasma_desc_t::m, plasma_desc_t::mb, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, plasma_context_self(), PLASMA_IB, PLASMA_SUCCESS, PlasmaConjTrans, PlasmaLeft, PlasmaLower, PlasmaNoTrans, PlasmaRight, PlasmaUpper, plasma_context_struct::quark, QUARK_CORE_zgelqt(), QUARK_CORE_zgeqrt(), QUARK_CORE_zherfb(), QUARK_CORE_ztslqt(), QUARK_CORE_ztsmlq(), QUARK_CORE_ztsmlq_corner(), QUARK_CORE_ztsmlq_hetra1(), QUARK_CORE_ztsmqr(), QUARK_CORE_ztsmqr_corner(), QUARK_CORE_ztsmqr_hetra1(), QUARK_CORE_ztsqrt(), QUARK_CORE_zunmlq(), QUARK_CORE_zunmqr(), plasma_sequence_t::quark_sequence, QUARK_Task_Flag_Set(), Quark_Task_Flags_Initializer, plasma_sequence_t::status, T, and TASK_SEQUENCE.

| void plasma_pzlacpy | ( | plasma_context_t * | plasma | ) |
Definition at line 23 of file pzlacpy.c.
References A, B, BLKLDD, CORE_zlacpy(), plasma_desc_t::m, plasma_desc_t::mb, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, PLASMA_RANK, PLASMA_SIZE, PLASMA_SUCCESS, plasma_unpack_args_5, PlasmaLower, PlasmaUpper, PlasmaUpperLower, plasma_sequence_t::status, and uplo.


| void plasma_pzlacpy_quark | ( | PLASMA_enum | uplo, |
| PLASMA_desc | A, | ||
| PLASMA_desc | B, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
Definition at line 153 of file pzlacpy.c.
References B, BLKLDD, plasma_desc_t::m, plasma_desc_t::mb, min, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, plasma_context_self(), PLASMA_SUCCESS, PlasmaLower, PlasmaUpper, PlasmaUpperLower, plasma_context_struct::quark, QUARK_CORE_zlacpy(), plasma_sequence_t::quark_sequence, QUARK_Task_Flag_Set(), Quark_Task_Flags_Initializer, plasma_sequence_t::status, and TASK_SEQUENCE.

| void plasma_pzlag2c | ( | plasma_context_t * | plasma | ) |
Definition at line 25 of file pzlag2c.c.
References A, BLKLDD, CORE_zlag2c(), plasma_desc_t::m, plasma_desc_t::mb, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, PLASMA_RANK, plasma_request_fail(), PLASMA_SIZE, PLASMA_SUCCESS, plasma_unpack_args_4, SB, and plasma_sequence_t::status.

| void plasma_pzlag2c_quark | ( | PLASMA_desc | A, |
| PLASMA_desc | SB, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
Definition at line 77 of file pzlag2c.c.
References BLKLDD, plasma_desc_t::m, plasma_desc_t::mb, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, plasma_context_self(), PLASMA_SUCCESS, plasma_context_struct::quark, QUARK_CORE_zlag2c(), plasma_sequence_t::quark_sequence, QUARK_Task_Flag_Set(), Quark_Task_Flags_Initializer, SB, plasma_sequence_t::status, and TASK_SEQUENCE.

| void plasma_pzlange | ( | plasma_context_t * | plasma | ) |
Definition at line 24 of file pzlange.c.
References A, BLKLDD, CORE_dlange(), CORE_dzasum(), CORE_zlange(), plasma_desc_t::i, plasma_desc_t::j, plasma_desc_t::m, max, plasma_desc_t::mb, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, norm, plasma_desc_t::nt, plasma_private_alloc(), plasma_private_free(), PLASMA_RANK, PLASMA_SIZE, plasma_unpack_args_6, PlasmaColumnwise, PlasmaFrobeniusNorm, PlasmaInfNorm, PlasmaMaxNorm, PlasmaOneNorm, PlasmaRealDouble, PlasmaRowwise, PlasmaUpperLower, ss_cond_set, ss_cond_wait, ss_finalize, and ss_init.


| void plasma_pzlange_quark | ( | PLASMA_enum | norm, |
| PLASMA_desc | A, | ||
| double * | work, | ||
| double * | result, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
Definition at line 202 of file pzlange.c.
References BLKLDD, plasma_desc_t::i, plasma_desc_t::j, plasma_desc_t::m, plasma_desc_t::mb, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, plasma_context_self(), plasma_shared_alloc(), PLASMA_SUCCESS, PlasmaColumnwise, PlasmaFrobeniusNorm, PlasmaInfNorm, PlasmaMaxNorm, PlasmaOneNorm, PlasmaRealDouble, PlasmaRowwise, PlasmaUpperLower, plasma_context_struct::quark, QUARK_CORE_dlange(), QUARK_CORE_dzasum_f1(), QUARK_CORE_free(), QUARK_CORE_zlange_f1(), plasma_sequence_t::quark_sequence, QUARK_Task_Flag_Set(), Quark_Task_Flags_Initializer, plasma_sequence_t::status, and TASK_SEQUENCE.

| void plasma_pzlansy | ( | plasma_context_t * | plasma | ) |
Definition at line 24 of file pzlansy.c.
References A, BLKLDD, CORE_dlange(), CORE_dzasum(), CORE_zlange(), CORE_zlansy(), plasma_desc_t::i, plasma_desc_t::j, plasma_desc_t::m, max, plasma_desc_t::mb, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, norm, plasma_desc_t::nt, plasma_private_alloc(), plasma_private_free(), PLASMA_RANK, PLASMA_SIZE, plasma_unpack_args_7, PlasmaColumnwise, PlasmaFrobeniusNorm, PlasmaInfNorm, PlasmaLower, PlasmaMaxNorm, PlasmaOneNorm, PlasmaRealDouble, PlasmaRowwise, PlasmaUpperLower, ss_cond_set, ss_cond_wait, ss_finalize, ss_init, and uplo.


| void plasma_pzlansy_quark | ( | PLASMA_enum | norm, |
| PLASMA_enum | uplo, | ||
| PLASMA_desc | A, | ||
| double * | work, | ||
| double * | result, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
Definition at line 219 of file pzlansy.c.
References BLKLDD, plasma_desc_t::i, plasma_desc_t::j, plasma_desc_t::m, plasma_desc_t::mb, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, plasma_context_self(), plasma_shared_alloc(), PLASMA_SUCCESS, PlasmaColumnwise, PlasmaFrobeniusNorm, PlasmaInfNorm, PlasmaLower, PlasmaMaxNorm, PlasmaOneNorm, PlasmaRealDouble, PlasmaRowwise, PlasmaUpperLower, plasma_context_struct::quark, QUARK_CORE_dlange(), QUARK_CORE_dzasum_f1(), QUARK_CORE_free(), QUARK_CORE_zlange_f1(), QUARK_CORE_zlansy_f1(), plasma_sequence_t::quark_sequence, QUARK_Task_Flag_Set(), Quark_Task_Flags_Initializer, plasma_sequence_t::status, and TASK_SEQUENCE.

| void plasma_pzlaset2_quark | ( | PLASMA_enum | uplo, |
| PLASMA_Complex64_t | alpha, | ||
| PLASMA_desc | A, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
Parallel initializztion a 2-D array A to ALPHA on the offdiagonals.
Definition at line 22 of file pzlaset2.c.
References BLKLDD, plasma_desc_t::m, plasma_desc_t::mb, min, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, plasma_context_self(), PLASMA_SUCCESS, PlasmaLower, PlasmaUpper, PlasmaUpperLower, plasma_context_struct::quark, QUARK_CORE_zlaset2(), plasma_sequence_t::quark_sequence, QUARK_Task_Flag_Set(), Quark_Task_Flags_Initializer, plasma_sequence_t::status, and TASK_SEQUENCE.

| void plasma_pzlaset_quark | ( | PLASMA_enum | uplo, |
| PLASMA_Complex64_t | alpha, | ||
| PLASMA_Complex64_t | beta, | ||
| PLASMA_desc | A, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
Parallel initialization a 2-D array A to BETA on the diagonal and ALPHA on the offdiagonals.
Definition at line 22 of file pzlaset.c.
References BLKLDD, plasma_desc_t::m, plasma_desc_t::mb, min, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, plasma_context_self(), PLASMA_SUCCESS, PlasmaLower, PlasmaUpper, PlasmaUpperLower, plasma_context_struct::quark, QUARK_CORE_zlaset(), plasma_sequence_t::quark_sequence, QUARK_Task_Flag_Set(), Quark_Task_Flags_Initializer, plasma_sequence_t::status, and TASK_SEQUENCE.

| void plasma_pzlaswp_quark | ( | PLASMA_desc | B, |
| int * | IPIV, | ||
| int | inc, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
Parallel tile row interchanges - dynamic scheduling
Definition at line 23 of file pzlaswp.c.
References B, IPIV, plasma_desc_t::m, plasma_desc_t::mb, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, plasma_context_self(), plasma_desc_submatrix(), PLASMA_SUCCESS, plasma_context_struct::quark, QUARK_CORE_zlaswp_ontile(), plasma_sequence_t::quark_sequence, QUARK_Task_Flag_Set(), Quark_Task_Flags_Initializer, plasma_sequence_t::status, and TASK_SEQUENCE.

| void plasma_pzlaswpc_quark | ( | PLASMA_desc | B, |
| int * | IPIV, | ||
| int | inc, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
Parallel tile column interchanges - dynamic scheduling
Definition at line 23 of file pzlaswpc.c.
References B, IPIV, plasma_desc_t::m, plasma_desc_t::mb, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, plasma_context_self(), plasma_desc_submatrix(), PLASMA_SUCCESS, plasma_context_struct::quark, QUARK_CORE_zlaswpc_ontile(), plasma_sequence_t::quark_sequence, QUARK_Task_Flag_Set(), Quark_Task_Flags_Initializer, plasma_sequence_t::status, and TASK_SEQUENCE.

| void plasma_pzlauum_quark | ( | PLASMA_enum | uplo, |
| PLASMA_desc | A, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
Parallel UU' or L'L operation - dynamic scheduling
Definition at line 23 of file pzlauum.c.
References A, BLKLDD, plasma_desc_t::m, plasma_desc_t::mb, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, plasma_context_self(), PLASMA_SUCCESS, PlasmaConjTrans, PlasmaLeft, PlasmaLower, PlasmaNonUnit, PlasmaNoTrans, PlasmaRight, plasma_context_struct::quark, QUARK_CORE_zgemm(), QUARK_CORE_zherk(), QUARK_CORE_zlauum(), QUARK_CORE_ztrmm(), plasma_sequence_t::quark_sequence, QUARK_Task_Flag_Set(), Quark_Task_Flags_Initializer, plasma_sequence_t::status, and TASK_SEQUENCE.

| void plasma_pzpack | ( | plasma_context_t * | plasma | ) |
plasma_pzpack pack all extra elements at the end of the matrix
+—————+ | | | | | A11 | | | | | +—————+ | A21 | +—————+
This matrix is initially stored as (example of Column Major, it's the same for row major. We just consider the transpose matrix) : A11(:,0), A21(:,0), A11(:,1), A21(:,1), ...
On exit, it's stored as follow. A11(:,:), A12(:,:)
| [in] | plasma | Plasma context |
| [in] | m | Number of rows in matrix A |
| [in] | n | Number of columns in matrix A |
| [in,out] | A | Matrix A to pack. (see above for entry and exit format) |
| [in] | m0 | Number of rows of A21 |
Definition at line 65 of file pzpack.c.
References A, CORE_zlacpy(), min, plasma_barrier(), plasma_private_alloc(), plasma_private_free(), PLASMA_RANK, PLASMA_SIZE, PLASMA_SUCCESS, plasma_unpack_args_6, PlasmaComplexDouble, PlasmaUpperLower, plasma_sequence_t::status, and W.


| void plasma_pzplghe | ( | plasma_context_t * | plasma | ) |
Parallel tile Cholesky factorization - static scheduling
Definition at line 21 of file pzplghe.c.
References A, BLKLDD, CORE_zplghe(), plasma_desc_t::m, plasma_desc_t::mb, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, PLASMA_RANK, PLASMA_SIZE, PLASMA_SUCCESS, plasma_unpack_args_5, and plasma_sequence_t::status.


| void plasma_pzplghe_quark | ( | double | bump, |
| PLASMA_desc | A, | ||
| unsigned long long int | seed, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
Parallel tile Cholesky factorization - dynamic scheduling
Definition at line 72 of file pzplghe.c.
References BLKLDD, plasma_desc_t::m, plasma_desc_t::mb, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, plasma_context_self(), PLASMA_SUCCESS, plasma_context_struct::quark, QUARK_CORE_zplghe(), plasma_sequence_t::quark_sequence, QUARK_Task_Flag_Set(), Quark_Task_Flags_Initializer, plasma_sequence_t::status, and TASK_SEQUENCE.

| void plasma_pzplgsy | ( | plasma_context_t * | plasma | ) |
Parallel tile Cholesky factorization - static scheduling
Definition at line 21 of file pzplgsy.c.
References A, BLKLDD, CORE_zplgsy(), plasma_desc_t::m, plasma_desc_t::mb, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, PLASMA_RANK, PLASMA_SIZE, PLASMA_SUCCESS, plasma_unpack_args_5, and plasma_sequence_t::status.


| void plasma_pzplgsy_quark | ( | PLASMA_Complex64_t | bump, |
| PLASMA_desc | A, | ||
| unsigned long long int | seed, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
Parallel tile Cholesky factorization - dynamic scheduling
Definition at line 72 of file pzplgsy.c.
References BLKLDD, plasma_desc_t::m, plasma_desc_t::mb, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, plasma_context_self(), PLASMA_SUCCESS, plasma_context_struct::quark, QUARK_CORE_zplgsy(), plasma_sequence_t::quark_sequence, QUARK_Task_Flag_Set(), Quark_Task_Flags_Initializer, plasma_sequence_t::status, and TASK_SEQUENCE.

| void plasma_pzplrnt | ( | plasma_context_t * | plasma | ) |
Parallel tile Cholesky factorization - static scheduling
Definition at line 21 of file pzplrnt.c.
References A, BLKLDD, CORE_zplrnt(), plasma_desc_t::m, plasma_desc_t::mb, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, PLASMA_RANK, PLASMA_SIZE, PLASMA_SUCCESS, plasma_unpack_args_4, and plasma_sequence_t::status.


| void plasma_pzplrnt_quark | ( | PLASMA_desc | A, |
| unsigned long long int | seed, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
Parallel tile Cholesky factorization - dynamic scheduling
Definition at line 71 of file pzplrnt.c.
References BLKLDD, plasma_desc_t::m, plasma_desc_t::mb, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, plasma_context_self(), PLASMA_SUCCESS, plasma_context_struct::quark, QUARK_CORE_zplrnt(), plasma_sequence_t::quark_sequence, QUARK_Task_Flag_Set(), Quark_Task_Flags_Initializer, plasma_sequence_t::status, and TASK_SEQUENCE.

| void plasma_pzpotrf | ( | plasma_context_t * | plasma | ) |
Parallel tile Cholesky factorization - static scheduling
Definition at line 23 of file pzpotrf.c.
References A, BLKLDD, CORE_zgemm(), CORE_zherk(), CORE_zpotrf(), CORE_ztrsm(), plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, PLASMA_RANK, plasma_request_fail(), PLASMA_SIZE, PLASMA_SUCCESS, plasma_unpack_args_4, PlasmaConjTrans, PlasmaLeft, PlasmaLower, PlasmaNonUnit, PlasmaNoTrans, PlasmaRight, PlasmaUpper, ss_abort, ss_aborted, ss_cond_set, ss_cond_wait, ss_finalize, ss_init, plasma_sequence_t::status, and uplo.


| void plasma_pzpotrf_quark | ( | PLASMA_enum | uplo, |
| PLASMA_desc | A, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
Parallel tile Cholesky factorization - dynamic scheduling
Definition at line 190 of file pzpotrf.c.
References A, BLKLDD, plasma_desc_t::m, plasma_desc_t::mb, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, plasma_context_self(), PLASMA_SUCCESS, PlasmaConjTrans, PlasmaLeft, PlasmaLower, PlasmaNonUnit, PlasmaNoTrans, PlasmaRight, PlasmaUpper, plasma_context_struct::quark, QUARK_CORE_zgemm(), QUARK_CORE_zherk(), QUARK_CORE_zpotrf(), QUARK_CORE_ztrsm(), plasma_sequence_t::quark_sequence, QUARK_Task_Flag_Set(), Quark_Task_Flags_Initializer, plasma_sequence_t::status, and TASK_SEQUENCE.

| void plasma_pzshift | ( | plasma_context_t * | plasma | ) |
plasma_pzshift shifts a batch of cycles in parallel.
| [in] | plasma | Plasma context |
| [in] | m | Number of rows of the panel to shift. |
| [in] | n | Number of columns of the panel to shift |
| [in] | L | Size of each chunk to shift (Usually mb) |
| [in,out] | A | |
| [in] | leaders | |
| [in] | nleaders | |
| [in] | thrdbypb |
Definition at line 231 of file pzshift.c.
References A, CORE_zshiftw(), L, modpow(), plasma_barrier(), plasma_private_alloc(), plasma_private_free(), PLASMA_RANK, PLASMA_SUCCESS, plasma_unpack_args_9, PlasmaComplexDouble, plasma_sequence_t::status, and W.


| void plasma_pzshift_quark | ( | int | , |
| int | , | ||
| int | , | ||
| PLASMA_Complex64_t * | , | ||
| int * | , | ||
| int | , | ||
| int | , | ||
| PLASMA_sequence * | , | ||
| PLASMA_request * | |||
| ) |
Definition at line 289 of file pzshift.c.
References CORE_foo_quark(), INOUT, L, plasma_context_self(), PLASMA_SUCCESS, plasma_context_struct::quark, QUARK_CORE_zshift(), QUARK_Insert_Task(), plasma_sequence_t::quark_sequence, QUARK_Task_Flag_Set(), Quark_Task_Flags_Initializer, plasma_sequence_t::status, TASK_SEQUENCE, TASKCOLOR, TASKLABEL, and VALUE.

| void plasma_pzsymm | ( | plasma_context_t * | plasma | ) |
Parallel tile symmetric matrix-matrix multiplication - static scheduling
Definition at line 24 of file pzsymm.c.
References A, B, BLKLDD, C, CORE_zgemm(), CORE_zsymm(), plasma_desc_t::m, plasma_desc_t::mb, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, PLASMA_RANK, PLASMA_SIZE, PLASMA_SUCCESS, plasma_unpack_args_9, PlasmaLeft, PlasmaLower, PlasmaNoTrans, PlasmaTrans, side, plasma_sequence_t::status, and uplo.


| void plasma_pzsymm_quark | ( | PLASMA_enum | side, |
| PLASMA_enum | uplo, | ||
| PLASMA_Complex64_t | alpha, | ||
| PLASMA_desc | A, | ||
| PLASMA_desc | B, | ||
| PLASMA_Complex64_t | beta, | ||
| PLASMA_desc | C, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
Parallel tile symmetric matrix-matrix multiplication - dynamic scheduling
Definition at line 231 of file pzsymm.c.
References A, B, BLKLDD, C, plasma_desc_t::m, plasma_desc_t::mb, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, plasma_context_self(), PLASMA_SUCCESS, PlasmaLeft, PlasmaLower, PlasmaNoTrans, PlasmaTrans, plasma_context_struct::quark, QUARK_CORE_zgemm(), QUARK_CORE_zsymm(), plasma_sequence_t::quark_sequence, QUARK_Task_Flag_Set(), Quark_Task_Flags_Initializer, plasma_sequence_t::status, and TASK_SEQUENCE.

| void plasma_pzsyr2k | ( | plasma_context_t * | plasma | ) |
Parallel tile Hermitian rank-k update - static scheduling
Definition at line 23 of file pzsyr2k.c.
References A, B, BLKLDD, C, CORE_zgemm(), CORE_zsyr2k(), plasma_desc_t::m, plasma_desc_t::mb, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, PLASMA_RANK, PLASMA_SIZE, PLASMA_SUCCESS, plasma_unpack_args_9, PlasmaLower, PlasmaNoTrans, PlasmaTrans, plasma_sequence_t::status, trans, and uplo.


| void plasma_pzsyr2k_quark | ( | PLASMA_enum | uplo, |
| PLASMA_enum | trans, | ||
| PLASMA_Complex64_t | alpha, | ||
| PLASMA_desc | A, | ||
| PLASMA_desc | B, | ||
| PLASMA_Complex64_t | beta, | ||
| PLASMA_desc | C, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
Parallel tile Hermitian rank-k update - dynamic scheduling
Definition at line 217 of file pzsyr2k.c.
References A, B, BLKLDD, C, plasma_desc_t::m, plasma_desc_t::mb, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, plasma_context_self(), PLASMA_SUCCESS, PlasmaLower, PlasmaNoTrans, PlasmaTrans, plasma_context_struct::quark, QUARK_CORE_zgemm(), QUARK_CORE_zsyr2k(), plasma_sequence_t::quark_sequence, QUARK_Task_Flag_Set(), Quark_Task_Flags_Initializer, plasma_sequence_t::status, and TASK_SEQUENCE.

| void plasma_pzsyrk | ( | plasma_context_t * | plasma | ) |
Parallel tile symmetric rank-k update - static scheduling
Definition at line 23 of file pzsyrk.c.
References A, BLKLDD, C, CORE_zgemm(), CORE_zsyrk(), plasma_desc_t::m, plasma_desc_t::mb, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, PLASMA_RANK, PLASMA_SIZE, PLASMA_SUCCESS, plasma_unpack_args_8, PlasmaLower, PlasmaNoTrans, PlasmaTrans, plasma_sequence_t::status, trans, and uplo.


| void plasma_pzsyrk_quark | ( | PLASMA_enum | uplo, |
| PLASMA_enum | trans, | ||
| PLASMA_Complex64_t | alpha, | ||
| PLASMA_desc | A, | ||
| PLASMA_Complex64_t | beta, | ||
| PLASMA_desc | C, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
Parallel tile symmetric rank-k update - dynamic scheduling
Definition at line 180 of file pzsyrk.c.
References A, BLKLDD, C, plasma_desc_t::m, plasma_desc_t::mb, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, plasma_context_self(), PLASMA_SUCCESS, PlasmaLower, PlasmaNoTrans, PlasmaTrans, plasma_context_struct::quark, QUARK_CORE_zgemm(), QUARK_CORE_zsyrk(), plasma_sequence_t::quark_sequence, QUARK_Task_Flag_Set(), Quark_Task_Flags_Initializer, plasma_sequence_t::status, and TASK_SEQUENCE.

| void plasma_pztrmm | ( | plasma_context_t * | plasma | ) |

| void plasma_pztrmm_quark | ( | PLASMA_enum | side, |
| PLASMA_enum | uplo, | ||
| PLASMA_enum | trans, | ||
| PLASMA_enum | diag, | ||
| PLASMA_Complex64_t | alpha, | ||
| PLASMA_desc | A, | ||
| PLASMA_desc | B, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
Parallel tile triangular matrix-matrix multiplication - dynamic scheduling
Definition at line 269 of file pztrmm.c.
References A, B, BLKLDD, plasma_desc_t::m, plasma_desc_t::mb, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, plasma_context_self(), PLASMA_SUCCESS, PlasmaLeft, PlasmaNoTrans, PlasmaUpper, plasma_context_struct::quark, QUARK_CORE_zgemm(), QUARK_CORE_ztrmm(), plasma_sequence_t::quark_sequence, QUARK_Task_Flag_Set(), Quark_Task_Flags_Initializer, plasma_sequence_t::status, and TASK_SEQUENCE.


| void plasma_pztrsm | ( | plasma_context_t * | plasma | ) |
Parallel tile triangular solve - static scheduling
Definition at line 24 of file pztrsm.c.
References A, B, BLKLDD, CORE_zgemm(), CORE_ztrsm(), diag, plasma_desc_t::m, plasma_desc_t::mb, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, PLASMA_RANK, PLASMA_SIZE, PLASMA_SUCCESS, plasma_unpack_args_9, PlasmaLeft, PlasmaLower, PlasmaNoTrans, PlasmaUpper, side, ss_cond_set, ss_cond_wait, ss_finalize, ss_init, plasma_sequence_t::status, trans, and uplo.


| void plasma_pztrsm_quark | ( | PLASMA_enum | side, |
| PLASMA_enum | uplo, | ||
| PLASMA_enum | trans, | ||
| PLASMA_enum | diag, | ||
| PLASMA_Complex64_t | alpha, | ||
| PLASMA_desc | A, | ||
| PLASMA_desc | B, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
Parallel tile triangular solve - dynamic scheduling
Definition at line 347 of file pztrsm.c.
References A, B, BLKLDD, plasma_desc_t::m, plasma_desc_t::mb, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, plasma_context_self(), PLASMA_SUCCESS, PlasmaLeft, PlasmaNoTrans, PlasmaUpper, plasma_context_struct::quark, QUARK_CORE_zgemm(), QUARK_CORE_ztrsm(), plasma_sequence_t::quark_sequence, QUARK_Task_Flag_Set(), Quark_Task_Flags_Initializer, plasma_sequence_t::status, and TASK_SEQUENCE.


| void plasma_pztrsmpl | ( | plasma_context_t * | plasma | ) |
Parallel forward substitution for tile LU - static scheduling
Definition at line 26 of file pztrsmpl.c.
References A, B, BLKLDD, CORE_zgessm(), CORE_zssssm(), IPIV, L, plasma_desc_t::m, plasma_desc_t::mb, min, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, PLASMA_IB, PLASMA_RANK, PLASMA_SIZE, PLASMA_SUCCESS, plasma_unpack_args_6, ss_cond_set, ss_cond_wait, ss_finalize, ss_init, and plasma_sequence_t::status.


| void plasma_pztrsmpl_quark | ( | PLASMA_desc | A, |
| PLASMA_desc | B, | ||
| PLASMA_desc | L, | ||
| int * | IPIV, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
Parallel forward substitution for tile LU - dynamic scheduling
Definition at line 113 of file pztrsmpl.c.
References A, B, BLKLDD, IPIV, L, plasma_desc_t::m, plasma_desc_t::mb, min, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, plasma_context_self(), PLASMA_IB, PLASMA_SUCCESS, plasma_context_struct::quark, QUARK_CORE_zgessm(), QUARK_CORE_zssssm(), plasma_sequence_t::quark_sequence, QUARK_Task_Flag_Set(), Quark_Task_Flags_Initializer, plasma_sequence_t::status, and TASK_SEQUENCE.

| void plasma_pztrsmrv | ( | plasma_context_t * | plasma | ) |

| void plasma_pztrsmrv_quark | ( | PLASMA_enum | side, |
| PLASMA_enum | uplo, | ||
| PLASMA_enum | trans, | ||
| PLASMA_enum | diag, | ||
| PLASMA_Complex64_t | alpha, | ||
| PLASMA_desc | A, | ||
| PLASMA_desc | W, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
Parallel tile ReVerse triangular solve - dynamic scheduling
Definition at line 25 of file pztrsmrv.c.
References BLKLDD, plasma_desc_t::m, plasma_desc_t::mb, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, plasma_context_self(), plasma_desc_submatrix(), plasma_pzgemm_quark(), plasma_pztrsm_quark(), PLASMA_SUCCESS, PlasmaLower, PlasmaNoTrans, PlasmaRight, PlasmaUnit, PlasmaUpperLower, plasma_context_struct::quark, QUARK_CORE_zlacpy(), QUARK_CORE_zlaset(), QUARK_CORE_zlaset2(), plasma_sequence_t::quark_sequence, QUARK_Task_Flag_Set(), Quark_Task_Flags_Initializer, plasma_sequence_t::status, TASK_SEQUENCE, and W.

| void plasma_pztrtri_quark | ( | PLASMA_enum | uplo, |
| PLASMA_enum | diag, | ||
| PLASMA_desc | A, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
Parallel tile triangular matrix inverse - dynamic scheduling
Definition at line 23 of file pztrtri.c.
References A, BLKLDD, plasma_desc_t::m, plasma_desc_t::mb, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, plasma_context_self(), PLASMA_SUCCESS, PlasmaLeft, PlasmaLower, PlasmaNoTrans, PlasmaRight, plasma_context_struct::quark, QUARK_CORE_zgemm(), QUARK_CORE_ztrsm(), QUARK_CORE_ztrtri(), plasma_sequence_t::quark_sequence, QUARK_Task_Flag_Set(), Quark_Task_Flags_Initializer, plasma_sequence_t::status, and TASK_SEQUENCE.

| void plasma_pzungbr_quark | ( | PLASMA_enum | side, |
| PLASMA_desc | A, | ||
| PLASMA_desc | O, | ||
| PLASMA_desc | T, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
| void plasma_pzungbrrh_quark | ( | PLASMA_enum | side, |
| PLASMA_desc | A, | ||
| PLASMA_desc | O, | ||
| PLASMA_desc | T, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
| void plasma_pzunglq | ( | plasma_context_t * | plasma | ) |

| void plasma_pzunglq_quark | ( | PLASMA_desc | A, |
| PLASMA_desc | Q, | ||
| PLASMA_desc | T, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
Parallel construction of Q using tile V (application to identity) - dynamic scheduling
Definition at line 25 of file pzunglq.c.
References A, BLKLDD, plasma_desc_t::m, plasma_desc_t::mb, min, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, plasma_context_self(), PLASMA_IB, PLASMA_SUCCESS, PlasmaNoTrans, PlasmaRight, Q, plasma_context_struct::quark, QUARK_CORE_ztsmlq(), QUARK_CORE_zunmlq(), plasma_sequence_t::quark_sequence, QUARK_Task_Flag_Set(), Quark_Task_Flags_Initializer, plasma_sequence_t::status, T, and TASK_SEQUENCE.

| void plasma_pzunglqrh_quark | ( | PLASMA_desc | A, |
| PLASMA_desc | Q, | ||
| PLASMA_desc | T, | ||
| int | BS, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
Parallel construction of Q using tile V (application to identity; reduction Householder) - dynamic scheduling
Definition at line 25 of file pzunglqrh.c.
References A, BLKLDD, plasma_desc_t::m, plasma_desc_t::mb, min, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, plasma_context_self(), PLASMA_IB, PLASMA_SUCCESS, PlasmaNoTrans, PlasmaRight, Q, plasma_context_struct::quark, QUARK_CORE_ztsmlq(), QUARK_CORE_zttmlq(), QUARK_CORE_zunmlq(), plasma_sequence_t::quark_sequence, QUARK_Task_Flag_Set(), Quark_Task_Flags_Initializer, plasma_sequence_t::status, T, T2, and TASK_SEQUENCE.

| void plasma_pzungqr | ( | plasma_context_t * | plasma | ) |

| void plasma_pzungqr_quark | ( | PLASMA_desc | A, |
| PLASMA_desc | Q, | ||
| PLASMA_desc | T, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
Parallel construction of Q using tile V (application to identity) - dynamic scheduling
Definition at line 25 of file pzungqr.c.
References A, BLKLDD, plasma_desc_t::m, plasma_desc_t::mb, min, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, plasma_context_self(), PLASMA_IB, PLASMA_SUCCESS, PlasmaLeft, PlasmaNoTrans, Q, plasma_context_struct::quark, QUARK_CORE_ztsmqr(), QUARK_CORE_zunmqr(), plasma_sequence_t::quark_sequence, QUARK_Task_Flag_Set(), Quark_Task_Flags_Initializer, plasma_sequence_t::status, T, and TASK_SEQUENCE.

| void plasma_pzungqrrh | ( | plasma_context_t * | plasma | ) |

| void plasma_pzungqrrh_quark | ( | PLASMA_desc | A, |
| PLASMA_desc | Q, | ||
| PLASMA_desc | T, | ||
| int | BS, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
Parallel construction of Q using tile V (application to identity; reduction Householder) - dynamic scheduling
Definition at line 27 of file pzungqrrh.c.
References A, BLKLDD, plasma_desc_t::m, plasma_desc_t::mb, min, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, plasma_context_self(), PLASMA_IB, PLASMA_SUCCESS, PlasmaLeft, PlasmaNoTrans, Q, plasma_context_struct::quark, QUARK_CORE_ztsmqr(), QUARK_CORE_zttmqr(), QUARK_CORE_zunmqr(), plasma_sequence_t::quark_sequence, QUARK_Task_Flag_Set(), Quark_Task_Flags_Initializer, plasma_sequence_t::status, T, T2, and TASK_SEQUENCE.

| void plasma_pzungtr_quark | ( | PLASMA_enum | uplo, |
| PLASMA_desc | A, | ||
| PLASMA_desc | Q, | ||
| PLASMA_desc | T, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
| void plasma_pzunmlq | ( | plasma_context_t * | plasma | ) |
Parallel application of Q using tile V - LQ factorization - static scheduling
Definition at line 26 of file pzunmlq.c.
References A, B, BLKLDD, CORE_ztsmlq(), CORE_zunmlq(), plasma_desc_t::dtyp, plasma_desc_t::m, plasma_desc_t::mb, min, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, PLASMA_ERR_NOT_SUPPORTED, PLASMA_IB, plasma_private_alloc(), plasma_private_free(), PLASMA_RANK, plasma_request_fail(), PLASMA_SIZE, PLASMA_SUCCESS, plasma_unpack_args_7, PlasmaConjTrans, PlasmaLeft, side, ss_cond_set, ss_cond_wait, ss_finalize, ss_init, plasma_sequence_t::status, T, and trans.


| void plasma_pzunmlq_quark | ( | PLASMA_enum | side, |
| PLASMA_enum | trans, | ||
| PLASMA_desc | A, | ||
| PLASMA_desc | B, | ||
| PLASMA_desc | T, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
Parallel application of Q using tile V - LQ factorization - dynamic scheduling
Definition at line 135 of file pzunmlq.c.
References A, B, BLKLDD, plasma_desc_t::m, plasma_desc_t::mb, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, plasma_context_self(), PLASMA_IB, PLASMA_SUCCESS, PlasmaLeft, PlasmaNoTrans, plasma_context_struct::quark, QUARK_CORE_ztsmlq(), QUARK_CORE_zunmlq(), plasma_sequence_t::quark_sequence, QUARK_Task_Flag_Set(), Quark_Task_Flags_Initializer, plasma_sequence_t::status, T, and TASK_SEQUENCE.


| void plasma_pzunmlqrh_quark | ( | PLASMA_enum | side, |
| PLASMA_enum | trans, | ||
| PLASMA_desc | A, | ||
| PLASMA_desc | B, | ||
| PLASMA_desc | T, | ||
| int | BS, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
Parallel application of Q using tile V - LQ factorization (reduction Householder) - dynamic scheduling
Definition at line 27 of file pzunmlqrh.c.
References A, B, BLKLDD, plasma_desc_t::m, plasma_desc_t::mb, min, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, plasma_context_self(), PLASMA_IB, PLASMA_SUCCESS, PlasmaLeft, PlasmaNoTrans, plasma_context_struct::quark, QUARK_CORE_ztsmlq(), QUARK_CORE_zttmlq(), QUARK_CORE_zunmlq(), plasma_sequence_t::quark_sequence, QUARK_Task_Flag_Set(), Quark_Task_Flags_Initializer, plasma_sequence_t::status, T, T2, and TASK_SEQUENCE.

| void plasma_pzunmqr | ( | plasma_context_t * | plasma | ) |
Parallel application of Q using tile V - QR factorization - static scheduling
Definition at line 26 of file pzunmqr.c.
References A, B, BLKLDD, CORE_ztsmqr(), CORE_zunmqr(), plasma_desc_t::dtyp, plasma_desc_t::m, plasma_desc_t::mb, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, PLASMA_ERR_NOT_SUPPORTED, PLASMA_IB, plasma_private_alloc(), plasma_private_free(), PLASMA_RANK, plasma_request_fail(), PLASMA_SIZE, PLASMA_SUCCESS, plasma_unpack_args_7, PlasmaConjTrans, PlasmaLeft, side, ss_cond_set, ss_cond_wait, ss_finalize, ss_init, plasma_sequence_t::status, T, and trans.


| void plasma_pzunmqr_quark | ( | PLASMA_enum | side, |
| PLASMA_enum | trans, | ||
| PLASMA_desc | A, | ||
| PLASMA_desc | B, | ||
| PLASMA_desc | T, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
Parallel application of Q using tile V - QR factorization - dynamic scheduling
Definition at line 137 of file pzunmqr.c.
References A, B, BLKLDD, plasma_desc_t::m, plasma_desc_t::mb, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, plasma_context_self(), PLASMA_IB, PLASMA_SUCCESS, PlasmaConjTrans, PlasmaLeft, plasma_context_struct::quark, QUARK_CORE_ztsmqr(), QUARK_CORE_zunmqr(), plasma_sequence_t::quark_sequence, QUARK_Task_Flag_Set(), Quark_Task_Flags_Initializer, plasma_sequence_t::status, T, and TASK_SEQUENCE.


| void plasma_pzunmqrrh_quark | ( | PLASMA_enum | side, |
| PLASMA_enum | trans, | ||
| PLASMA_desc | A, | ||
| PLASMA_desc | B, | ||
| PLASMA_desc | T, | ||
| int | BS, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
Parallel application of Q using tile V - QR factorization (reduction Householder) - dynamic scheduling
Definition at line 27 of file pzunmqrrh.c.
References A, B, BLKLDD, plasma_desc_t::m, plasma_desc_t::mb, min, plasma_desc_t::mt, plasma_desc_t::n, plasma_desc_t::nb, plasma_desc_t::nt, plasma_context_self(), PLASMA_IB, PLASMA_SUCCESS, PlasmaConjTrans, PlasmaLeft, plasma_context_struct::quark, QUARK_CORE_ztsmqr(), QUARK_CORE_zttmqr(), QUARK_CORE_zunmqr(), plasma_sequence_t::quark_sequence, QUARK_Task_Flag_Set(), Quark_Task_Flags_Initializer, plasma_sequence_t::status, T, T2, and TASK_SEQUENCE.

| void plasma_pzunpack | ( | plasma_context_t * | plasma | ) |
plasma_pzunpack unpack all extra elements from the end of the matrix
+—————+ | | | | | A11 | | | | | +—————+ | A21 | +—————+
This matrix is initially stored as (example of Column Major, it's the same for row major. We just consider the transpose matrix) : A11(:,:), A12(:,:)
On exit, it's stored as follow. A11(:,0), A21(:,0), A11(:,1), A21(:,1), ...
| [in] | plasma | Plasma context |
| [in] | m | Number of rows in matrix A |
| [in] | n | Number of columns in matrix A |
| [in,out] | A | Matrix A to pack. (see above for entry and exit format) |
| [in] | m0 | Number of rows of A21 |
Definition at line 166 of file pzpack.c.
References A, CORE_zlacpy(), min, plasma_barrier(), plasma_private_alloc(), plasma_private_free(), PLASMA_RANK, PLASMA_SIZE, PLASMA_SUCCESS, plasma_unpack_args_6, PlasmaComplexDouble, PlasmaUpperLower, plasma_sequence_t::status, and W.


| int plasma_zshift | ( | plasma_context_t * | plasma, |
| int | m, | ||
| int | n, | ||
| PLASMA_Complex64_t * | A, | ||
| int | nprob, | ||
| int | me, | ||
| int | ne, | ||
| int | L, | ||
| PLASMA_sequence * | sequence, | ||
| PLASMA_request * | request | ||
| ) |
Declarations of internal sequential functions
plasma_zgetmi2 Implementation of inplace transposition based on the GKK algorithm by Gustavson, Karlsson, Kagstrom. This algorithm shift some cycles to transpose the matrix.
| [in] | m | Number of rows of matrix A |
| [in] | n | Number of columns of matrix A |
| [in,out] | A | Matrix of size L*m*n |
| [in] | nprob | Number of parallel and independant problems |
| [in] | me | Number of rows of the problem |
| [in] | ne | Number of columns in the problem |
| [in] | L | Size of chunk to use for transformation |
Definition at line 60 of file pzshift.c.
References GKK_BalanceLoad(), GKK_getLeaderNbr(), L, minloc(), plasma_dynamic_call_9, PLASMA_ERR_ILLEGAL_VALUE, plasma_error(), PLASMA_GRPSIZE, plasma_pzshift(), plasma_request_fail(), PLASMA_SCHEDULING, plasma_shared_alloc(), plasma_shared_free(), PLASMA_SIZE, plasma_static_call_9, PLASMA_STATIC_SCHEDULING, PLASMA_SUCCESS, and PlasmaInteger.

