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_csyr2k.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_csyr2k = PCORE_csyr2k
26 #define CORE_csyr2k PCORE_csyr2k
27 #endif
28 void CORE_csyr2k(int uplo, int trans,
29  int N, int K,
30  PLASMA_Complex32_t alpha, PLASMA_Complex32_t *A, int LDA,
31  PLASMA_Complex32_t *B, int LDB,
32  PLASMA_Complex32_t beta, PLASMA_Complex32_t *C, int LDC)
33 {
36  (CBLAS_UPLO)uplo, (CBLAS_TRANSPOSE)trans,
37  N, K,
38  CBLAS_SADDR(alpha), A, LDA, B, LDB,
39  CBLAS_SADDR(beta), C, LDC);
40 }
41 
42 /***************************************************************************/
45 void QUARK_CORE_csyr2k(Quark *quark, Quark_Task_Flags *task_flags,
46  int uplo, int trans,
47  int n, int k, int nb,
48  PLASMA_Complex32_t alpha, PLASMA_Complex32_t *A, int lda,
49  PLASMA_Complex32_t *B, int ldb,
50  PLASMA_Complex32_t beta, PLASMA_Complex32_t *C, int ldc)
51 {
53  QUARK_Insert_Task(quark, CORE_csyr2k_quark, task_flags,
54  sizeof(PLASMA_enum), &uplo, VALUE,
55  sizeof(PLASMA_enum), &trans, VALUE,
56  sizeof(int), &n, VALUE,
57  sizeof(int), &k, VALUE,
58  sizeof(PLASMA_Complex32_t), &alpha, VALUE,
59  sizeof(PLASMA_Complex32_t)*nb*nb, A, INPUT,
60  sizeof(int), &lda, VALUE,
61  sizeof(PLASMA_Complex32_t)*nb*nb, B, INPUT,
62  sizeof(int), &ldb, VALUE,
63  sizeof(PLASMA_Complex32_t), &beta, VALUE,
64  sizeof(PLASMA_Complex32_t)*nb*nb, C, INOUT,
65  sizeof(int), &ldc, VALUE,
66  0);
67 }
68 
69 /***************************************************************************/
72 #if defined(PLASMA_HAVE_WEAK)
73 #pragma weak CORE_csyr2k_quark = PCORE_csyr2k_quark
74 #define CORE_csyr2k_quark PCORE_csyr2k_quark
75 #endif
77 {
78  int uplo;
79  int trans;
80  int n;
81  int k;
82  PLASMA_Complex32_t alpha;
84  int lda;
86  int ldb;
87  PLASMA_Complex32_t beta;
89  int ldc;
90 
91  quark_unpack_args_12(quark, uplo, trans, n, k, alpha, A, lda, B, ldb, beta, C, ldc);
92  CORE_csyr2k(uplo, trans, n, k, alpha, A, lda, B, ldb, beta, C, ldc);
93 }