diff --git a/runtime/starpu/codelets/codelet_ztplqt.c b/runtime/starpu/codelets/codelet_ztplqt.c index 186665b03f0657cb1157e4560b0feb7b6c82693f..252e266dba1da69a8098b027425029e68ef9c338 100644 --- a/runtime/starpu/codelets/codelet_ztplqt.c +++ b/runtime/starpu/codelets/codelet_ztplqt.c @@ -15,7 +15,7 @@ * @author Mathieu Faverge * @author Lucas Barros de Assis * @author Florent Pruvost - * @date 2023-07-06 + * @date 2024-10-18 * @precisions normal z -> s d c * */ @@ -42,7 +42,7 @@ static void cl_ztplqt_cpu_func(void *descr[], void *cl_arg) TCORE_zlaset( ChamUpperLower, ib, M, 0., 0., tileT ); TCORE_ztplqt( M, N, L, ib, - tileA, tileB, tileT, tileWORK->mat ); + tileA, tileB, tileT, tileWORK->mat ); } #endif /* !defined(CHAMELEON_SIMULATION) */ @@ -58,7 +58,8 @@ void INSERT_TASK_ztplqt( const RUNTIME_option_t *options, const CHAM_desc_t *T, int Tm, int Tn ) { struct starpu_codelet *codelet = &cl_ztplqt; - void (*callback)(void*) = options->profiling ? cl_ztplqt_callback : NULL; + const char *cl_name; + void (*callback)(void*); CHAMELEON_BEGIN_ACCESS_DECLARATION; CHAMELEON_ACCESS_RW(A, Am, An); @@ -66,27 +67,33 @@ void INSERT_TASK_ztplqt( const RUNTIME_option_t *options, CHAMELEON_ACCESS_W(T, Tm, Tn); CHAMELEON_END_ACCESS_DECLARATION; + /* Callback for profiling information */ + callback = options->profiling ? cl_ztplqt_callback : NULL; + + /* Refine name */ + cl_name = (L == 0) ? "ztslqt" : "zttlqt"; + rt_starpu_insert_task( codelet, + /* Task codelet arguments */ STARPU_VALUE, &M, sizeof(int), STARPU_VALUE, &N, sizeof(int), STARPU_VALUE, &L, sizeof(int), STARPU_VALUE, &ib, sizeof(int), - STARPU_RW, RTBLKADDR(A, ChamComplexDouble, Am, An), - STARPU_RW, RTBLKADDR(B, ChamComplexDouble, Bm, Bn), - STARPU_W, RTBLKADDR(T, ChamComplexDouble, Tm, Tn), - /* Other options */ - STARPU_SCRATCH, options->ws_worker, - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + + /* Task handles */ + STARPU_RW, RTBLKADDR(A, ChamComplexDouble, Am, An), + STARPU_RW, RTBLKADDR(B, ChamComplexDouble, Bm, Bn), + STARPU_W, RTBLKADDR(T, ChamComplexDouble, Tm, Tn), + STARPU_SCRATCH, options->ws_worker, + + /* Common task arguments */ + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, STARPU_EXECUTE_ON_WORKER, options->workerid, -#if defined(CHAMELEON_USE_MPI) - STARPU_EXECUTE_ON_NODE, B->get_rankof(B, Bm, Bn), -#endif -#if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, (L == 0) ? "ztplqs" : "ztplqt", -#endif - 0); + STARPU_EXECUTE_ON_NODE, B->get_rankof(B, Bm, Bn), + STARPU_NAME, cl_name, + 0 ); - (void)ib; (void)nb; + (void)nb; } diff --git a/runtime/starpu/codelets/codelet_ztpmlqt.c b/runtime/starpu/codelets/codelet_ztpmlqt.c index 685605a0f991cc74428d29c698122da34b3624d0..bcbc253662dbc46b2f880e2ca7b3a38c5791a75d 100644 --- a/runtime/starpu/codelets/codelet_ztpmlqt.c +++ b/runtime/starpu/codelets/codelet_ztpmlqt.c @@ -13,7 +13,7 @@ * @author Mathieu Faverge * @author Lucas Barros de Assis * @author Florent Pruvost - * @date 2023-07-06 + * @date 2024-10-18 * @precisions normal z -> s d c * */ @@ -99,7 +99,8 @@ void INSERT_TASK_ztpmlqt( const RUNTIME_option_t *options, const CHAM_desc_t *B, int Bm, int Bn ) { struct starpu_codelet *codelet = &cl_ztpmlqt; - void (*callback)(void*) = options->profiling ? cl_ztpmlqt_callback : NULL; + const char *cl_name; + void (*callback)(void*); CHAMELEON_BEGIN_ACCESS_DECLARATION; CHAMELEON_ACCESS_R(V, Vm, Vn); @@ -108,8 +109,15 @@ void INSERT_TASK_ztpmlqt( const RUNTIME_option_t *options, CHAMELEON_ACCESS_RW(B, Bm, Bn); CHAMELEON_END_ACCESS_DECLARATION; + /* Callback for profiling information */ + callback = options->profiling ? cl_ztpmlqt_callback : NULL; + + /* Refine name */ + cl_name = (L == 0) ? "ztsmlqt" : "zttmlqt"; + rt_starpu_insert_task( codelet, + /* Task codelet arguments */ STARPU_VALUE, &side, sizeof(int), STARPU_VALUE, &trans, sizeof(int), STARPU_VALUE, &M, sizeof(int), @@ -118,22 +126,21 @@ void INSERT_TASK_ztpmlqt( const RUNTIME_option_t *options, STARPU_VALUE, &L, sizeof(int), STARPU_VALUE, &ib, sizeof(int), STARPU_VALUE, &(options->ws_wsize), sizeof(size_t), + + /* Task handles */ STARPU_R, RTBLKADDR(V, ChamComplexDouble, Vm, Vn), STARPU_R, RTBLKADDR(T, ChamComplexDouble, Tm, Tn), STARPU_RW, RTBLKADDR(A, ChamComplexDouble, Am, An), STARPU_RW, RTBLKADDR(B, ChamComplexDouble, Bm, Bn), - /* Other options */ STARPU_SCRATCH, options->ws_worker, - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + + /* Common task arguments */ + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, STARPU_EXECUTE_ON_WORKER, options->workerid, -#if defined(CHAMELEON_USE_MPI) - STARPU_EXECUTE_ON_NODE, B->get_rankof(B, Bm, Bn), -#endif -#if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, (( L == 0 ) ? "ztsmlq" : "ztpmlqt"), -#endif - 0); - - (void)ib; (void)nb; + STARPU_EXECUTE_ON_NODE, B->get_rankof(B, Bm, Bn), + STARPU_NAME, cl_name, + 0 ); + + (void)nb; } diff --git a/runtime/starpu/codelets/codelet_ztpmqrt.c b/runtime/starpu/codelets/codelet_ztpmqrt.c index 5d992f7a1c56e40ef5a809af830e9cdb678f050d..9f7dea4c8c92f01b9db1467fe441aa18b5e025b5 100644 --- a/runtime/starpu/codelets/codelet_ztpmqrt.c +++ b/runtime/starpu/codelets/codelet_ztpmqrt.c @@ -13,7 +13,7 @@ * @author Mathieu Faverge * @author Lucas Barros de Assis * @author Florent Pruvost - * @date 2023-07-06 + * @date 2024-10-18 * @precisions normal z -> s d c * */ @@ -99,7 +99,8 @@ void INSERT_TASK_ztpmqrt( const RUNTIME_option_t *options, const CHAM_desc_t *B, int Bm, int Bn ) { struct starpu_codelet *codelet = &cl_ztpmqrt; - void (*callback)(void*) = options->profiling ? cl_ztpmqrt_callback : NULL; + const char *cl_name; + void (*callback)(void*); CHAMELEON_BEGIN_ACCESS_DECLARATION; CHAMELEON_ACCESS_R(V, Vm, Vn); @@ -108,8 +109,15 @@ void INSERT_TASK_ztpmqrt( const RUNTIME_option_t *options, CHAMELEON_ACCESS_RW(B, Bm, Bn); CHAMELEON_END_ACCESS_DECLARATION; + /* Callback for profiling information */ + callback = options->profiling ? cl_ztpmqrt_callback : NULL; + + /* Refine name */ + cl_name = (L == 0) ? "ztsmqrt" : "zttmqrt"; + rt_starpu_insert_task( codelet, + /* Task codelet arguments */ STARPU_VALUE, &side, sizeof(int), STARPU_VALUE, &trans, sizeof(int), STARPU_VALUE, &M, sizeof(int), @@ -118,22 +126,21 @@ void INSERT_TASK_ztpmqrt( const RUNTIME_option_t *options, STARPU_VALUE, &L, sizeof(int), STARPU_VALUE, &ib, sizeof(int), STARPU_VALUE, &(options->ws_wsize), sizeof(size_t), + + /* Task handles */ STARPU_R, RTBLKADDR(V, ChamComplexDouble, Vm, Vn), STARPU_R, RTBLKADDR(T, ChamComplexDouble, Tm, Tn), STARPU_RW, RTBLKADDR(A, ChamComplexDouble, Am, An), STARPU_RW, RTBLKADDR(B, ChamComplexDouble, Bm, Bn), - /* Other options */ - STARPU_SCRATCH, options->ws_worker, - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + STARPU_SCRATCH, options->ws_worker, + + /* Common task arguments */ + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, STARPU_EXECUTE_ON_WORKER, options->workerid, -#if defined(CHAMELEON_USE_MPI) - STARPU_EXECUTE_ON_NODE, B->get_rankof(B, Bm, Bn), -#endif -#if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, (( L == 0 ) ? "ztsmqr" : "ztpmqrt"), -#endif - 0); - - (void)ib; (void)nb; + STARPU_EXECUTE_ON_NODE, B->get_rankof(B, Bm, Bn), + STARPU_NAME, cl_name, + 0 ); + + (void)nb; } diff --git a/runtime/starpu/codelets/codelet_ztpqrt.c b/runtime/starpu/codelets/codelet_ztpqrt.c index f8a36d8e980e10b7d81e71350c0c7ae87eefd442..5dc969f17a7fbd5618e6475d8840532aa65971c0 100644 --- a/runtime/starpu/codelets/codelet_ztpqrt.c +++ b/runtime/starpu/codelets/codelet_ztpqrt.c @@ -59,7 +59,8 @@ void INSERT_TASK_ztpqrt( const RUNTIME_option_t *options, const CHAM_desc_t *T, int Tm, int Tn ) { struct starpu_codelet *codelet = &cl_ztpqrt; - void (*callback)(void*) = options->profiling ? cl_ztpqrt_callback : NULL; + const char *cl_name; + void (*callback)(void*); CHAMELEON_BEGIN_ACCESS_DECLARATION; CHAMELEON_ACCESS_RW(A, Am, An); @@ -67,24 +68,33 @@ void INSERT_TASK_ztpqrt( const RUNTIME_option_t *options, CHAMELEON_ACCESS_W(T, Tm, Tn); CHAMELEON_END_ACCESS_DECLARATION; + /* Callback for profiling information */ + callback = options->profiling ? cl_ztpqrt_callback : NULL; + + /* Refine name */ + cl_name = (L == 0) ? "ztsqrt" : "zttqrt"; + rt_starpu_insert_task( codelet, + /* Task codelet arguments */ STARPU_VALUE, &M, sizeof(int), STARPU_VALUE, &N, sizeof(int), STARPU_VALUE, &L, sizeof(int), STARPU_VALUE, &ib, sizeof(int), - STARPU_RW, RTBLKADDR(A, ChamComplexDouble, Am, An), - STARPU_RW, RTBLKADDR(B, ChamComplexDouble, Bm, Bn), - STARPU_W, RTBLKADDR(T, ChamComplexDouble, Tm, Tn), - /* Other options */ - STARPU_SCRATCH, options->ws_worker, - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + + /* Task handles */ + STARPU_RW, RTBLKADDR(A, ChamComplexDouble, Am, An), + STARPU_RW, RTBLKADDR(B, ChamComplexDouble, Bm, Bn), + STARPU_W, RTBLKADDR(T, ChamComplexDouble, Tm, Tn), + STARPU_SCRATCH, options->ws_worker, + + /* Common task arguments */ + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, STARPU_EXECUTE_ON_WORKER, options->workerid, -#if defined(CHAMELEON_USE_MPI) - STARPU_EXECUTE_ON_NODE, B->get_rankof(B, Bm, Bn), -#endif + STARPU_EXECUTE_ON_NODE, B->get_rankof(B, Bm, Bn), + STARPU_NAME, cl_name, 0 ); - (void)ib; (void)nb; + (void)nb; }