20 #include "../include/starpu_exageostat.h" 22 static void CORE_zcpy_starpu(
void *buffers[],
void *cl_arg){
28 A = (
double *)STARPU_MATRIX_GET_PTR(buffers[0]);
29 starpu_codelet_unpack_args(cl_arg, &m, &m0, &r);
34 static struct starpu_codelet cl_zcpy =
37 .cpu_funcs = {CORE_zcpy_starpu},
77 MORSE_context_t *morse;
78 MORSE_option_t options;
79 morse = morse_context_self();
80 if (sequence->status != MORSE_SUCCESS)
82 RUNTIME_options_init(&options, morse, sequence, request);
86 MORSE_desc_t A = *descA;
87 struct starpu_codelet *cl=&cl_zcpy;
89 for (m = 0; m < A.mt; m++) {
90 tempmm = m == A.mt-1 ? A.m - m * A.mb : A.mb;
94 STARPU_VALUE, &tempmm,
sizeof(
int),
95 STARPU_VALUE, &m0,
sizeof(
int),
96 STARPU_VALUE, &r,
sizeof(
double),
97 STARPU_W,
RTBLKADDR(descA,
sizeof(
double)*tempmm, m, 0),
98 #
if defined(CHAMELEON_CODELETS_HAVE_NAME)
106 RUNTIME_options_ws_free(&options);
108 return MORSE_SUCCESS;
#define RTBLKADDR(desc, type, m, n)
#define starpu_mpi_codelet(_codelet_)
void core_dzcpy(double *Z, int m, int m0, double *r)
int MORSE_MLE_zcpy_Tile_Async(MORSE_desc_t *descA, double *r, MORSE_sequence_t *sequence, MORSE_request_t *request)