MAGMA  1.2.0
MatrixAlgebraonGPUandMulticoreArchitectures
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups
codelet_zttmqr.c
Go to the documentation of this file.
1 
18 #include "morse_quark.h"
19 void MORSE_zttmqr(MorseOption_t * options,
20  int side, int trans,
21  int m1, int n1, int m2, int n2, int k, int ib,
22  magma_desc_t *A1, int A1m, int A1n,
23  magma_desc_t *A2, int A2m, int A2n,
24  magma_desc_t *V, int Vm, int Vn, int ldv,
25  magma_desc_t *T, int Tm, int Tn)
26 {
27  int lda1 = BLKLDD(A1, A1m);
28  int lda2 = BLKLDD(A2, A2m);
29  int ldv = BLKLDD(V, Vm);
30  int ldt = BLKLDD(T, Tm);
31  int nb = options->nb;
32  int ldwork = side == PlasmaLeft ? ib : nb;
33 
35  QUARK_Insert_Task(options->quark, CORE_zttmqr_quark, options->task_flags,
36  sizeof(PLASMA_enum), &side, VALUE,
37  sizeof(PLASMA_enum), &trans, VALUE,
38  sizeof(int), &m1, VALUE,
39  sizeof(int), &n1, VALUE,
40  sizeof(int), &m2, VALUE,
41  sizeof(int), &n2, VALUE,
42  sizeof(int), &k, VALUE,
43  sizeof(int), &ib, VALUE,
44  sizeof(PLASMA_Complex64_t)*nb*nb, BLKADDR(A1, PLASMA_Complex64_t, A1m, A1n), INOUT,
45  sizeof(int), &lda1, VALUE,
46  sizeof(PLASMA_Complex64_t)*nb*nb, BLKADDR(A2, PLASMA_Complex64_t, A2m, A2n), INOUT,
47  sizeof(int), &lda2, VALUE,
48  sizeof(PLASMA_Complex64_t)*nb*nb, BLKADDR(V, PLASMA_Complex64_t, Vm, Vn), INPUT|QUARK_REGION_D|QUARK_REGION_U,
49  sizeof(int), &ldv, VALUE,
50  sizeof(PLASMA_Complex64_t)*ib*nb, BLKADDR(T, PLASMA_Complex64_t, Tm, Tn), INPUT,
51  sizeof(int), &ldt, VALUE,
52  sizeof(PLASMA_Complex64_t)*ib*nb, NULL, SCRATCH,
53  sizeof(int), &ldwork, VALUE,
54  0);
55 }