codelet_ztpmqrt.c 1.61 KB
Newer Older
Philippe Virouleau's avatar
Philippe Virouleau committed
1 2
/**
 *
Philippe Virouleau's avatar
Fix doc  
Philippe Virouleau committed
3
 * @file openmp/codelet_ztpmqrt.c
Philippe Virouleau's avatar
Philippe Virouleau committed
4 5 6
 *
 * @copyright 2009-2016 The University of Tennessee and The University of
 *                      Tennessee Research Foundation. All rights reserved.
Philippe Virouleau's avatar
Fix doc  
Philippe Virouleau committed
7
 * @copyright 2012-2018 Bordeaux INP, CNRS (LaBRI UMR 5800), Inria,
Philippe Virouleau's avatar
Philippe Virouleau committed
8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
 *                      Univ. Bordeaux. All rights reserved.
 *
 * @brief Chameleon ztpmqrt StarPU codelet
 *
 * @version 1.0.0
 * @author Mathieu Faverge
 * @date 2016-12-15
 * @precisions normal z -> s d c
 *
 */
#include "chameleon_openmp.h"
#include "chameleon/tasks_z.h"
void
INSERT_TASK_ztpmqrt( const RUNTIME_option_t *options,
                    cham_side_t side, cham_trans_t trans,
                    int M, int N, int K, int L, int ib, int nb,
                    const CHAM_desc_t *V, int Vm, int Vn, int ldv,
                    const CHAM_desc_t *T, int Tm, int Tn, int ldt,
                    const CHAM_desc_t *A, int Am, int An, int lda,
                    const CHAM_desc_t *B, int Bm, int Bn, int ldb )
{
    CHAMELEON_Complex64_t *ptrA = RTBLKADDR(A, CHAMELEON_Complex64_t, Am, An);
    CHAMELEON_Complex64_t *ptrB = RTBLKADDR(B, CHAMELEON_Complex64_t, Bm, Bn);
    CHAMELEON_Complex64_t *ptrT = RTBLKADDR(T, CHAMELEON_Complex64_t, Tm, Tn);
    CHAMELEON_Complex64_t *ptrV = RTBLKADDR(V, CHAMELEON_Complex64_t, Vm, Vn);
33 34 35
#pragma omp task firstprivate(side, trans, M, N, K, L, ib, ptrV, ldv, ptrT, ldt, ptrA, lda, ptrB, ldb) depend(in:ptrV[0], ptrT[0]) depend(inout:ptrA[0], ptrB[0])
    {
      CHAMELEON_Complex64_t tmp[options->ws_wsize];
Philippe Virouleau's avatar
Philippe Virouleau committed
36
    CORE_ztpmqrt( side, trans, M, N, K, L, ib,
37 38
                  ptrV, ldv, ptrT, ldt, ptrA, lda, ptrB, ldb, tmp );
    }
Philippe Virouleau's avatar
Philippe Virouleau committed
39
}