PLASMA  2.4.5
PLASMA - Parallel Linear Algebra for Scalable Multi-core Architectures
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups
core_zsymm.c
Go to the documentation of this file.
1 
17 #include "common.h"
18 
19 /***************************************************************************/
24 #if defined(PLASMA_HAVE_WEAK)
25 #pragma weak CORE_zsymm = PCORE_zsymm
26 #define CORE_zsymm PCORE_zsymm
27 #endif
28 void CORE_zsymm(int side, int uplo,
29  int M, int N,
30  PLASMA_Complex64_t alpha, PLASMA_Complex64_t *A, int LDA,
31  PLASMA_Complex64_t *B, int LDB,
32  PLASMA_Complex64_t beta, PLASMA_Complex64_t *C, int LDC)
33 {
36  (CBLAS_SIDE)side, (CBLAS_UPLO)uplo,
37  M, N,
38  CBLAS_SADDR(alpha), A, LDA,
39  B, LDB,
40  CBLAS_SADDR(beta), C, LDC);
41 }
42 
43 /***************************************************************************/
46 void QUARK_CORE_zsymm(Quark *quark, Quark_Task_Flags *task_flags,
47  int side, int uplo,
48  int m, int n, int nb,
49  PLASMA_Complex64_t alpha, PLASMA_Complex64_t *A, int lda,
50  PLASMA_Complex64_t *B, int ldb,
51  PLASMA_Complex64_t beta, PLASMA_Complex64_t *C, int ldc)
52 {
54  QUARK_Insert_Task(quark, CORE_zsymm_quark, task_flags,
55  sizeof(PLASMA_enum), &side, VALUE,
56  sizeof(PLASMA_enum), &uplo, VALUE,
57  sizeof(int), &m, VALUE,
58  sizeof(int), &n, VALUE,
59  sizeof(PLASMA_Complex64_t), &alpha, VALUE,
60  sizeof(PLASMA_Complex64_t)*nb*nb, A, INPUT,
61  sizeof(int), &lda, VALUE,
62  sizeof(PLASMA_Complex64_t)*nb*nb, B, INPUT,
63  sizeof(int), &ldb, VALUE,
64  sizeof(PLASMA_Complex64_t), &beta, VALUE,
65  sizeof(PLASMA_Complex64_t)*nb*nb, C, INOUT,
66  sizeof(int), &ldc, VALUE,
67  0);
68 }
69 
70 /***************************************************************************/
73 #if defined(PLASMA_HAVE_WEAK)
74 #pragma weak CORE_zsymm_quark = PCORE_zsymm_quark
75 #define CORE_zsymm_quark PCORE_zsymm_quark
76 #endif
77 void CORE_zsymm_quark(Quark *quark)
78 {
79  int side;
80  int uplo;
81  int M;
82  int N;
83  PLASMA_Complex64_t alpha;
85  int LDA;
87  int LDB;
88  PLASMA_Complex64_t beta;
90  int LDC;
91 
92  quark_unpack_args_12(quark, side, uplo, M, N, alpha, A, LDA, B, LDB, beta, C, LDC);
95  (CBLAS_SIDE)side, (CBLAS_UPLO)uplo,
96  M, N,
97  CBLAS_SADDR(alpha), A, LDA,
98  B, LDB,
99  CBLAS_SADDR(beta), C, LDC);
100 }