From a2bde4b97ee1b69ada8a46a25ce78fe7ef7b87a5 Mon Sep 17 00:00:00 2001 From: Samuel Thibault <samuel.thibault@ens-lyon.org> Date: Fri, 17 Mar 2017 12:01:39 +0100 Subject: [PATCH] use macros in all codelets --- runtime/starpu/codelets/codelet_zasum.c | 6 ++ runtime/starpu/codelets/codelet_zaxpy.c | 32 +++++---- runtime/starpu/codelets/codelet_zbuild.c | 42 ++++++------ runtime/starpu/codelets/codelet_zgeadd.c | 39 +++++------ runtime/starpu/codelets/codelet_zgelqt.c | 43 ++++++------ runtime/starpu/codelets/codelet_zgeqrt.c | 43 ++++++------ runtime/starpu/codelets/codelet_zgessm.c | 45 ++++++------ runtime/starpu/codelets/codelet_zgessq.c | 31 +++++---- runtime/starpu/codelets/codelet_zgetrf.c | 33 ++++----- .../starpu/codelets/codelet_zgetrf_incpiv.c | 45 ++++++------ .../starpu/codelets/codelet_zgetrf_nopiv.c | 31 +++++---- runtime/starpu/codelets/codelet_zhe2ge.c | 35 +++++----- runtime/starpu/codelets/codelet_zhemm.c | 47 ++++++------- runtime/starpu/codelets/codelet_zher2k.c | 47 ++++++------- runtime/starpu/codelets/codelet_zherfb.c | 49 ++++++------- runtime/starpu/codelets/codelet_zherk.c | 41 +++++------ runtime/starpu/codelets/codelet_zhessq.c | 31 +++++---- runtime/starpu/codelets/codelet_zlacpy.c | 39 +++++------ runtime/starpu/codelets/codelet_zlag2c.c | 33 ++++----- runtime/starpu/codelets/codelet_zlange.c | 35 +++++----- runtime/starpu/codelets/codelet_zlanhe.c | 35 +++++----- runtime/starpu/codelets/codelet_zlansy.c | 35 +++++----- runtime/starpu/codelets/codelet_zlantr.c | 39 +++++------ runtime/starpu/codelets/codelet_zlascal.c | 31 +++++---- runtime/starpu/codelets/codelet_zlaset.c | 33 ++++----- runtime/starpu/codelets/codelet_zlaset2.c | 31 +++++---- runtime/starpu/codelets/codelet_zlatro.c | 37 +++++----- runtime/starpu/codelets/codelet_zlauum.c | 27 ++++---- runtime/starpu/codelets/codelet_zplghe.c | 37 +++++----- runtime/starpu/codelets/codelet_zplgsy.c | 37 +++++----- runtime/starpu/codelets/codelet_zplrnt.c | 36 +++++----- runtime/starpu/codelets/codelet_zplssq.c | 25 +++---- runtime/starpu/codelets/codelet_zpotrf.c | 31 +++++---- runtime/starpu/codelets/codelet_zssssm.c | 55 +++++++-------- runtime/starpu/codelets/codelet_zsymm.c | 47 ++++++------- runtime/starpu/codelets/codelet_zsyr2k.c | 47 ++++++------- runtime/starpu/codelets/codelet_zsyrk.c | 41 +++++------ runtime/starpu/codelets/codelet_zsyssq.c | 32 +++++---- .../starpu/codelets/codelet_zsytrf_nopiv.c | 31 +++++---- runtime/starpu/codelets/codelet_ztile_zero.c | 31 +++++---- runtime/starpu/codelets/codelet_ztpmqrt.c | 59 ++++++++-------- runtime/starpu/codelets/codelet_ztpqrt.c | 47 ++++++------- runtime/starpu/codelets/codelet_ztradd.c | 41 +++++------ runtime/starpu/codelets/codelet_ztrasm.c | 6 ++ runtime/starpu/codelets/codelet_ztrmm.c | 43 ++++++------ runtime/starpu/codelets/codelet_ztrsm.c | 49 ++++++------- runtime/starpu/codelets/codelet_ztrssq.c | 36 +++++----- runtime/starpu/codelets/codelet_ztrtri.c | 31 +++++---- runtime/starpu/codelets/codelet_ztslqt.c | 49 ++++++------- runtime/starpu/codelets/codelet_ztsmlq.c | 63 ++++++++--------- .../starpu/codelets/codelet_ztsmlq_hetra1.c | 63 ++++++++--------- runtime/starpu/codelets/codelet_ztsmqr.c | 68 ++++++++++--------- .../starpu/codelets/codelet_ztsmqr_hetra1.c | 61 +++++++++-------- runtime/starpu/codelets/codelet_ztsqrt.c | 51 +++++++------- runtime/starpu/codelets/codelet_ztstrf.c | 55 +++++++-------- runtime/starpu/codelets/codelet_zttlqt.c | 45 ++++++------ runtime/starpu/codelets/codelet_zttmlq.c | 63 ++++++++--------- runtime/starpu/codelets/codelet_zttmqr.c | 68 ++++++++++--------- runtime/starpu/codelets/codelet_zttqrt.c | 45 ++++++------ runtime/starpu/codelets/codelet_zunmlq.c | 53 ++++++++------- runtime/starpu/codelets/codelet_zunmqr.c | 58 ++++++++-------- 61 files changed, 1298 insertions(+), 1221 deletions(-) diff --git a/runtime/starpu/codelets/codelet_zasum.c b/runtime/starpu/codelets/codelet_zasum.c index 7c17a35d1..2323b95e6 100644 --- a/runtime/starpu/codelets/codelet_zasum.c +++ b/runtime/starpu/codelets/codelet_zasum.c @@ -35,6 +35,12 @@ void MORSE_TASK_dzasum(const MORSE_option_t *options, { struct starpu_codelet *codelet = &cl_zasum; void (*callback)(void*) = options->profiling ? cl_zasum_callback : NULL; + + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_R(A, Am, An); + MORSE_ACCESS_RW(B, Bm, Bn); + MORSE_END_ACCESS_DECLARATION; + starpu_insert_task( starpu_mpi_codelet(codelet), STARPU_VALUE, &storev, sizeof(MORSE_enum), diff --git a/runtime/starpu/codelets/codelet_zaxpy.c b/runtime/starpu/codelets/codelet_zaxpy.c index 557eaa108..56b03bfe8 100644 --- a/runtime/starpu/codelets/codelet_zaxpy.c +++ b/runtime/starpu/codelets/codelet_zaxpy.c @@ -33,23 +33,25 @@ void MORSE_TASK_zaxpy(const MORSE_option_t *options, struct starpu_codelet *codelet = &cl_zaxpy; void (*callback)(void*) = options->profiling ? cl_zaxpy_callback : NULL; - if ( morse_desc_islocal( A, Am, An ) || - morse_desc_islocal( B, Bm, Bn ) ){ - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &M, sizeof(int), - STARPU_VALUE, alpha, sizeof(MORSE_Complex64_t), - STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), - STARPU_VALUE, &incA, sizeof(int), - STARPU_RW, RTBLKADDR(B, MORSE_Complex64_t, Bm, Bn), - STARPU_VALUE, &incB, sizeof(int), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_R(A, Am, An); + MORSE_ACCESS_RW(B, Bm, Bn); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &M, sizeof(int), + STARPU_VALUE, alpha, sizeof(MORSE_Complex64_t), + STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), + STARPU_VALUE, &incA, sizeof(int), + STARPU_RW, RTBLKADDR(B, MORSE_Complex64_t, Bm, Bn), + STARPU_VALUE, &incB, sizeof(int), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "zaxpy", + STARPU_NAME, "zaxpy", #endif - 0); - } + 0); } diff --git a/runtime/starpu/codelets/codelet_zbuild.c b/runtime/starpu/codelets/codelet_zbuild.c index d2e654064..45cf4467f 100644 --- a/runtime/starpu/codelets/codelet_zbuild.c +++ b/runtime/starpu/codelets/codelet_zbuild.c @@ -43,30 +43,30 @@ void MORSE_TASK_zbuild( const MORSE_option_t *options, void (*callback)(void*) = options->profiling ? cl_zbuild_callback : NULL; int row_min, row_max, col_min, col_max; + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_AAAESS_RW(A, Am, An); + MORSE_END_ACCESS_DECLARATION; - if ( morse_desc_islocal( A, Am, An ) ) - { - row_min = Am*A->mb ; - row_max = Am == A->mt-1 ? A->m-1 : row_min+A->mb-1 ; - col_min = An*A->nb ; - col_max = An == A->nt-1 ? A->n-1 : col_min+A->nb-1 ; - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &row_min, sizeof(int), - STARPU_VALUE, &row_max, sizeof(int), - STARPU_VALUE, &col_min, sizeof(int), - STARPU_VALUE, &col_max, sizeof(int), - STARPU_W, RTBLKADDR(A, MORSE_Complex64_t, Am, An), - STARPU_VALUE, &lda, sizeof(int), - STARPU_VALUE, &user_data, sizeof(void*), - STARPU_VALUE, &user_build_callback, sizeof(void*), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + row_min = Am*A->mb ; + row_max = Am == A->mt-1 ? A->m-1 : row_min+A->mb-1 ; + col_min = An*A->nb ; + col_max = An == A->nt-1 ? A->n-1 : col_min+A->nb-1 ; + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &row_min, sizeof(int), + STARPU_VALUE, &row_max, sizeof(int), + STARPU_VALUE, &col_min, sizeof(int), + STARPU_VALUE, &col_max, sizeof(int), + STARPU_W, RTBLKADDR(A, MORSE_Complex64_t, Am, An), + STARPU_VALUE, &lda, sizeof(int), + STARPU_VALUE, &user_data, sizeof(void*), + STARPU_VALUE, &user_build_callback, sizeof(void*), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "zbuild", + STARPU_NAME, "zbuild", #endif - 0); - } + 0); } diff --git a/runtime/starpu/codelets/codelet_zgeadd.c b/runtime/starpu/codelets/codelet_zgeadd.c index 1a57e3123..edfd5461b 100644 --- a/runtime/starpu/codelets/codelet_zgeadd.c +++ b/runtime/starpu/codelets/codelet_zgeadd.c @@ -91,27 +91,28 @@ void MORSE_TASK_zgeadd(const MORSE_option_t *options, struct starpu_codelet *codelet = &cl_zgeadd; void (*callback)(void*) = options->profiling ? cl_zgeadd_callback : NULL; - if ( morse_desc_islocal( A, Am, An ) || - morse_desc_islocal( B, Bm, Bn ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &trans, sizeof(MORSE_enum), - STARPU_VALUE, &m, sizeof(int), - STARPU_VALUE, &n, sizeof(int), - STARPU_VALUE, &alpha, sizeof(MORSE_Complex64_t), - STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), - STARPU_VALUE, &lda, sizeof(int), - STARPU_VALUE, &beta, sizeof(MORSE_Complex64_t), - STARPU_RW, RTBLKADDR(B, MORSE_Complex64_t, Bm, Bn), - STARPU_VALUE, &ldb, sizeof(int), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_R(A, Am, An); + MORSE_ACCESS_RW(B, Bm, Bn); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &trans, sizeof(MORSE_enum), + STARPU_VALUE, &m, sizeof(int), + STARPU_VALUE, &n, sizeof(int), + STARPU_VALUE, &alpha, sizeof(MORSE_Complex64_t), + STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), + STARPU_VALUE, &lda, sizeof(int), + STARPU_VALUE, &beta, sizeof(MORSE_Complex64_t), + STARPU_RW, RTBLKADDR(B, MORSE_Complex64_t, Bm, Bn), + STARPU_VALUE, &ldb, sizeof(int), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "zgeadd", + STARPU_NAME, "zgeadd", #endif - 0); - } + 0); (void)nb; } diff --git a/runtime/starpu/codelets/codelet_zgelqt.c b/runtime/starpu/codelets/codelet_zgelqt.c index 2b4c0daf8..af571f2ae 100644 --- a/runtime/starpu/codelets/codelet_zgelqt.c +++ b/runtime/starpu/codelets/codelet_zgelqt.c @@ -104,29 +104,30 @@ void MORSE_TASK_zgelqt(const MORSE_option_t *options, void (*callback)(void*) = options->profiling ? cl_zgelqt_callback : NULL; MORSE_starpu_ws_t *h_work = (MORSE_starpu_ws_t*)(options->ws_host); - if ( morse_desc_islocal( A, Am, An ) || - morse_desc_islocal( T, Tm, Tn ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &m, sizeof(int), - STARPU_VALUE, &n, sizeof(int), - STARPU_VALUE, &ib, sizeof(int), - STARPU_RW, RTBLKADDR(A, MORSE_Complex64_t, Am, An), - STARPU_VALUE, &lda, sizeof(int), - STARPU_W, RTBLKADDR(T, MORSE_Complex64_t, Tm, Tn), - STARPU_VALUE, &ldt, sizeof(int), - /* max( nb * (ib+1), ib * (ib+nb) ) */ - STARPU_SCRATCH, options->ws_worker, - /* /\* ib*n + 3*ib*ib + max(m,n) *\/ */ - STARPU_VALUE, &h_work, sizeof(MORSE_starpu_ws_t *), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_RW(A, Am, An); + MORSE_ACCESS_W(T, Tm, Tn); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &m, sizeof(int), + STARPU_VALUE, &n, sizeof(int), + STARPU_VALUE, &ib, sizeof(int), + STARPU_RW, RTBLKADDR(A, MORSE_Complex64_t, Am, An), + STARPU_VALUE, &lda, sizeof(int), + STARPU_W, RTBLKADDR(T, MORSE_Complex64_t, Tm, Tn), + STARPU_VALUE, &ldt, sizeof(int), + /* max( nb * (ib+1), ib * (ib+nb) ) */ + STARPU_SCRATCH, options->ws_worker, + /* /\* ib*n + 3*ib*ib + max(m,n) *\/ */ + STARPU_VALUE, &h_work, sizeof(MORSE_starpu_ws_t *), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "zgelqt", + STARPU_NAME, "zgelqt", #endif - 0); - } + 0); } diff --git a/runtime/starpu/codelets/codelet_zgeqrt.c b/runtime/starpu/codelets/codelet_zgeqrt.c index d738fc0b5..50769b3be 100644 --- a/runtime/starpu/codelets/codelet_zgeqrt.c +++ b/runtime/starpu/codelets/codelet_zgeqrt.c @@ -105,29 +105,30 @@ void MORSE_TASK_zgeqrt(const MORSE_option_t *options, void (*callback)(void*) = options->profiling ? cl_zgeqrt_callback : NULL; MORSE_starpu_ws_t *h_work = (MORSE_starpu_ws_t*)(options->ws_host); - if ( morse_desc_islocal( A, Am, An ) || - morse_desc_islocal( T, Tm, Tn ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &m, sizeof(int), - STARPU_VALUE, &n, sizeof(int), - STARPU_VALUE, &ib, sizeof(int), - STARPU_RW, RTBLKADDR(A, MORSE_Complex64_t, Am, An), - STARPU_VALUE, &lda, sizeof(int), - STARPU_W, RTBLKADDR(T, MORSE_Complex64_t, Tm, Tn), - STARPU_VALUE, &ldt, sizeof(int), - /* max( nb * (ib+1), ib * (ib+nb) ) */ - STARPU_SCRATCH, options->ws_worker, - /* ib * (m+3*ib) + max(m,n) */ - STARPU_VALUE, &h_work, sizeof(MORSE_starpu_ws_t *), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_RW(A, Am, An); + MORSE_ACCESS_W(T, Tm, Tn); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &m, sizeof(int), + STARPU_VALUE, &n, sizeof(int), + STARPU_VALUE, &ib, sizeof(int), + STARPU_RW, RTBLKADDR(A, MORSE_Complex64_t, Am, An), + STARPU_VALUE, &lda, sizeof(int), + STARPU_W, RTBLKADDR(T, MORSE_Complex64_t, Tm, Tn), + STARPU_VALUE, &ldt, sizeof(int), + /* max( nb * (ib+1), ib * (ib+nb) ) */ + STARPU_SCRATCH, options->ws_worker, + /* ib * (m+3*ib) + max(m,n) */ + STARPU_VALUE, &h_work, sizeof(MORSE_starpu_ws_t *), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "zgeqrt", + STARPU_NAME, "zgeqrt", #endif - 0); - } + 0); } diff --git a/runtime/starpu/codelets/codelet_zgessm.c b/runtime/starpu/codelets/codelet_zgessm.c index cabe11ce9..547111784 100644 --- a/runtime/starpu/codelets/codelet_zgessm.c +++ b/runtime/starpu/codelets/codelet_zgessm.c @@ -90,30 +90,31 @@ void MORSE_TASK_zgessm(const MORSE_option_t *options, struct starpu_codelet *codelet = &cl_zgessm; void (*callback)(void*) = options->profiling ? cl_zgessm_callback : NULL; - if ( morse_desc_islocal( L, Lm, Ln ) || - morse_desc_islocal( D, Dm, Dn ) || - morse_desc_islocal( A, Am, An ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &m, sizeof(int), - STARPU_VALUE, &n, sizeof(int), - STARPU_VALUE, &k, sizeof(int), - STARPU_VALUE, &ib, sizeof(int), - STARPU_VALUE, &IPIV, sizeof(int*), - STARPU_R, RTBLKADDR(L, MORSE_Complex64_t, Lm, Ln), - STARPU_VALUE, &ldl, sizeof(int), - STARPU_R, RTBLKADDR(D, MORSE_Complex64_t, Dm, Dn), - STARPU_VALUE, &ldd, sizeof(int), - STARPU_RW, RTBLKADDR(A, MORSE_Complex64_t, Am, An), - STARPU_VALUE, &lda, sizeof(int), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_R(L, Lm, Ln); + MORSE_ACCESS_R(D, Dm, Dn); + MORSE_ACCESS_RW(A, Am, An); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &m, sizeof(int), + STARPU_VALUE, &n, sizeof(int), + STARPU_VALUE, &k, sizeof(int), + STARPU_VALUE, &ib, sizeof(int), + STARPU_VALUE, &IPIV, sizeof(int*), + STARPU_R, RTBLKADDR(L, MORSE_Complex64_t, Lm, Ln), + STARPU_VALUE, &ldl, sizeof(int), + STARPU_R, RTBLKADDR(D, MORSE_Complex64_t, Dm, Dn), + STARPU_VALUE, &ldd, sizeof(int), + STARPU_RW, RTBLKADDR(A, MORSE_Complex64_t, Am, An), + STARPU_VALUE, &lda, sizeof(int), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "zgessm", + STARPU_NAME, "zgessm", #endif - 0); - } + 0); } diff --git a/runtime/starpu/codelets/codelet_zgessq.c b/runtime/starpu/codelets/codelet_zgessq.c index cd229712b..094c7ba09 100644 --- a/runtime/starpu/codelets/codelet_zgessq.c +++ b/runtime/starpu/codelets/codelet_zgessq.c @@ -35,23 +35,24 @@ void MORSE_TASK_zgessq( const MORSE_option_t *options, struct starpu_codelet *codelet = &cl_zgessq; void (*callback)(void*) = options->profiling ? cl_zgessq_callback : NULL; - if ( morse_desc_islocal( A, Am, An ) || - morse_desc_islocal( SCALESUMSQ, SCALESUMSQm, SCALESUMSQn ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &m, sizeof(int), - STARPU_VALUE, &n, sizeof(int), - STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), - STARPU_VALUE, &lda, sizeof(int), - STARPU_RW, RTBLKADDR(SCALESUMSQ, double, SCALESUMSQm, SCALESUMSQn), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_R(A, Am, An); + MORSE_ACCESS_RW(SCALESUMSQ, SCALESUMSQm, SCALESUMSQn); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &m, sizeof(int), + STARPU_VALUE, &n, sizeof(int), + STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), + STARPU_VALUE, &lda, sizeof(int), + STARPU_RW, RTBLKADDR(SCALESUMSQ, double, SCALESUMSQm, SCALESUMSQn), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "zgessq", + STARPU_NAME, "zgessq", #endif - 0); - } + 0); } diff --git a/runtime/starpu/codelets/codelet_zgetrf.c b/runtime/starpu/codelets/codelet_zgetrf.c index 54544d069..e9b5327bf 100644 --- a/runtime/starpu/codelets/codelet_zgetrf.c +++ b/runtime/starpu/codelets/codelet_zgetrf.c @@ -40,24 +40,25 @@ void MORSE_TASK_zgetrf(const MORSE_option_t *options, struct starpu_codelet *codelet = &cl_zgetrf; void (*callback)(void*) = options->profiling ? cl_zgetrf_callback : NULL; - if ( morse_desc_islocal( A, Am, An ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &m, sizeof(int), - STARPU_VALUE, &n, sizeof(int), - STARPU_RW, RTBLKADDR(A, MORSE_Complex64_t, Am, An), - STARPU_VALUE, &lda, sizeof(int), - STARPU_VALUE, &IPIV, sizeof(int*), - STARPU_VALUE, &check_info, sizeof(MORSE_bool), - STARPU_VALUE, &iinfo, sizeof(int), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_RW(A, Am, An); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &m, sizeof(int), + STARPU_VALUE, &n, sizeof(int), + STARPU_RW, RTBLKADDR(A, MORSE_Complex64_t, Am, An), + STARPU_VALUE, &lda, sizeof(int), + STARPU_VALUE, &IPIV, sizeof(int*), + STARPU_VALUE, &check_info, sizeof(MORSE_bool), + STARPU_VALUE, &iinfo, sizeof(int), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "zgetrf", + STARPU_NAME, "zgetrf", #endif - 0); - } + 0); } diff --git a/runtime/starpu/codelets/codelet_zgetrf_incpiv.c b/runtime/starpu/codelets/codelet_zgetrf_incpiv.c index c76be02aa..ad3475cb7 100644 --- a/runtime/starpu/codelets/codelet_zgetrf_incpiv.c +++ b/runtime/starpu/codelets/codelet_zgetrf_incpiv.c @@ -100,30 +100,31 @@ void MORSE_TASK_zgetrf_incpiv(const MORSE_option_t *options, MORSE_starpu_ws_t *h_work = (MORSE_starpu_ws_t*)(options->ws_host); - if ( morse_desc_islocal( A, Am, An ) || - morse_desc_islocal( L, Lm, Ln ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &m, sizeof(int), - STARPU_VALUE, &n, sizeof(int), - STARPU_VALUE, &ib, sizeof(int), - STARPU_RW, RTBLKADDR(A, MORSE_Complex64_t, Am, An), - STARPU_VALUE, &lda, sizeof(int), - STARPU_W, RTBLKADDR(L, MORSE_Complex64_t, Lm, Ln), - STARPU_VALUE, &ldl, sizeof(int), - STARPU_VALUE, &IPIV, sizeof(int*), - STARPU_VALUE, &check_info, sizeof(MORSE_bool), - STARPU_VALUE, &iinfo, sizeof(int), - STARPU_SCRATCH, options->ws_worker, - STARPU_VALUE, &h_work, sizeof(MORSE_starpu_ws_t *), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_RW(A, Am, An); + MORSE_ACCESS_W(L, Lm, Ln); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &m, sizeof(int), + STARPU_VALUE, &n, sizeof(int), + STARPU_VALUE, &ib, sizeof(int), + STARPU_RW, RTBLKADDR(A, MORSE_Complex64_t, Am, An), + STARPU_VALUE, &lda, sizeof(int), + STARPU_W, RTBLKADDR(L, MORSE_Complex64_t, Lm, Ln), + STARPU_VALUE, &ldl, sizeof(int), + STARPU_VALUE, &IPIV, sizeof(int*), + STARPU_VALUE, &check_info, sizeof(MORSE_bool), + STARPU_VALUE, &iinfo, sizeof(int), + STARPU_SCRATCH, options->ws_worker, + STARPU_VALUE, &h_work, sizeof(MORSE_starpu_ws_t *), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "zgetrf_incpiv", + STARPU_NAME, "zgetrf_incpiv", #endif - 0); - } + 0); } diff --git a/runtime/starpu/codelets/codelet_zgetrf_nopiv.c b/runtime/starpu/codelets/codelet_zgetrf_nopiv.c index 3fa0f5c39..ab9d87ace 100644 --- a/runtime/starpu/codelets/codelet_zgetrf_nopiv.c +++ b/runtime/starpu/codelets/codelet_zgetrf_nopiv.c @@ -85,23 +85,24 @@ void MORSE_TASK_zgetrf_nopiv(const MORSE_option_t *options, struct starpu_codelet *codelet = &cl_zgetrf_nopiv; void (*callback)(void*) = options->profiling ? cl_zgetrf_nopiv_callback : NULL; - if ( morse_desc_islocal( A, Am, An ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &m, sizeof(int), - STARPU_VALUE, &n, sizeof(int), - STARPU_VALUE, &ib, sizeof(int), - STARPU_RW, RTBLKADDR(A, MORSE_Complex64_t, Am, An), - STARPU_VALUE, &lda, sizeof(int), - STARPU_VALUE, &iinfo, sizeof(int), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_RW(A, Am, An); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &m, sizeof(int), + STARPU_VALUE, &n, sizeof(int), + STARPU_VALUE, &ib, sizeof(int), + STARPU_RW, RTBLKADDR(A, MORSE_Complex64_t, Am, An), + STARPU_VALUE, &lda, sizeof(int), + STARPU_VALUE, &iinfo, sizeof(int), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "zgetrf_nopiv", + STARPU_NAME, "zgetrf_nopiv", #endif - 0); - } + 0); } /* diff --git a/runtime/starpu/codelets/codelet_zhe2ge.c b/runtime/starpu/codelets/codelet_zhe2ge.c index f107252cc..6551a8fbb 100644 --- a/runtime/starpu/codelets/codelet_zhe2ge.c +++ b/runtime/starpu/codelets/codelet_zhe2ge.c @@ -39,25 +39,26 @@ void MORSE_TASK_zhe2ge(const MORSE_option_t *options, struct starpu_codelet *codelet = &cl_zhe2ge; void (*callback)(void*) = options->profiling ? cl_zhe2ge_callback : NULL; - if ( morse_desc_islocal( A, Am, An ) || - morse_desc_islocal( B, Bm, Bn ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &uplo, sizeof(MORSE_enum), - STARPU_VALUE, &m, sizeof(int), - STARPU_VALUE, &n, sizeof(int), - STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), - STARPU_VALUE, &lda, sizeof(int), - STARPU_W, RTBLKADDR(B, MORSE_Complex64_t, Bm, Bn), - STARPU_VALUE, &ldb, sizeof(int), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_R(A, Am, An); + MORSE_ACCESS_W(B, Bm, Bn); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &uplo, sizeof(MORSE_enum), + STARPU_VALUE, &m, sizeof(int), + STARPU_VALUE, &n, sizeof(int), + STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), + STARPU_VALUE, &lda, sizeof(int), + STARPU_W, RTBLKADDR(B, MORSE_Complex64_t, Bm, Bn), + STARPU_VALUE, &ldb, sizeof(int), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "zhe2ge", + STARPU_NAME, "zhe2ge", #endif - 0); - } + 0); } #if !defined(CHAMELEON_SIMULATION) diff --git a/runtime/starpu/codelets/codelet_zhemm.c b/runtime/starpu/codelets/codelet_zhemm.c index 4489e84ad..df4523463 100644 --- a/runtime/starpu/codelets/codelet_zhemm.c +++ b/runtime/starpu/codelets/codelet_zhemm.c @@ -48,31 +48,32 @@ void MORSE_TASK_zhemm(const MORSE_option_t *options, struct starpu_codelet *codelet = &cl_zhemm; void (*callback)(void*) = options->profiling ? cl_zhemm_callback : NULL; - if ( morse_desc_islocal( A, Am, An ) || - morse_desc_islocal( B, Bm, Bn ) || - morse_desc_islocal( C, Cm, Cn ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &side, sizeof(MORSE_enum), - STARPU_VALUE, &uplo, sizeof(MORSE_enum), - STARPU_VALUE, &m, sizeof(int), - STARPU_VALUE, &n, sizeof(int), - STARPU_VALUE, &alpha, sizeof(MORSE_Complex64_t), - STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), - STARPU_VALUE, &lda, sizeof(int), - STARPU_R, RTBLKADDR(B, MORSE_Complex64_t, Bm, Bn), - STARPU_VALUE, &ldb, sizeof(int), - STARPU_VALUE, &beta, sizeof(MORSE_Complex64_t), - STARPU_RW, RTBLKADDR(C, MORSE_Complex64_t, Cm, Cn), - STARPU_VALUE, &ldc, sizeof(int), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_R(A, Am, An); + MORSE_ACCESS_R(B, Bm, Bn); + MORSE_ACCESS_RW(C, Cm, Cn); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &side, sizeof(MORSE_enum), + STARPU_VALUE, &uplo, sizeof(MORSE_enum), + STARPU_VALUE, &m, sizeof(int), + STARPU_VALUE, &n, sizeof(int), + STARPU_VALUE, &alpha, sizeof(MORSE_Complex64_t), + STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), + STARPU_VALUE, &lda, sizeof(int), + STARPU_R, RTBLKADDR(B, MORSE_Complex64_t, Bm, Bn), + STARPU_VALUE, &ldb, sizeof(int), + STARPU_VALUE, &beta, sizeof(MORSE_Complex64_t), + STARPU_RW, RTBLKADDR(C, MORSE_Complex64_t, Cm, Cn), + STARPU_VALUE, &ldc, sizeof(int), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "zhemm", + STARPU_NAME, "zhemm", #endif - 0); - } + 0); } diff --git a/runtime/starpu/codelets/codelet_zher2k.c b/runtime/starpu/codelets/codelet_zher2k.c index 78a4d6f13..9b6b7194d 100644 --- a/runtime/starpu/codelets/codelet_zher2k.c +++ b/runtime/starpu/codelets/codelet_zher2k.c @@ -48,31 +48,32 @@ void MORSE_TASK_zher2k(const MORSE_option_t *options, struct starpu_codelet *codelet = &cl_zher2k; void (*callback)(void*) = options->profiling ? cl_zher2k_callback : NULL; - if ( morse_desc_islocal( A, Am, An ) || - morse_desc_islocal( B, Bm, Bn ) || - morse_desc_islocal( C, Cm, Cn ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &uplo, sizeof(MORSE_enum), - STARPU_VALUE, &trans, sizeof(MORSE_enum), - STARPU_VALUE, &n, sizeof(int), - STARPU_VALUE, &k, sizeof(int), - STARPU_VALUE, &alpha, sizeof(MORSE_Complex64_t), - STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), - STARPU_VALUE, &lda, sizeof(int), - STARPU_R, RTBLKADDR(B, MORSE_Complex64_t, Bm, Bn), - STARPU_VALUE, &ldb, sizeof(int), - STARPU_VALUE, &beta, sizeof(double), - STARPU_RW, RTBLKADDR(C, MORSE_Complex64_t, Cm, Cn), - STARPU_VALUE, &ldc, sizeof(int), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_R(A, Am, An); + MORSE_ACCESS_R(B, Bm, Bn); + MORSE_ACCESS_RW(C, Cm, Cn); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &uplo, sizeof(MORSE_enum), + STARPU_VALUE, &trans, sizeof(MORSE_enum), + STARPU_VALUE, &n, sizeof(int), + STARPU_VALUE, &k, sizeof(int), + STARPU_VALUE, &alpha, sizeof(MORSE_Complex64_t), + STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), + STARPU_VALUE, &lda, sizeof(int), + STARPU_R, RTBLKADDR(B, MORSE_Complex64_t, Bm, Bn), + STARPU_VALUE, &ldb, sizeof(int), + STARPU_VALUE, &beta, sizeof(double), + STARPU_RW, RTBLKADDR(C, MORSE_Complex64_t, Cm, Cn), + STARPU_VALUE, &ldc, sizeof(int), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "zher2k", + STARPU_NAME, "zher2k", #endif - 0); - } + 0); } diff --git a/runtime/starpu/codelets/codelet_zherfb.c b/runtime/starpu/codelets/codelet_zherfb.c index 210fb3278..b5ceec04b 100644 --- a/runtime/starpu/codelets/codelet_zherfb.c +++ b/runtime/starpu/codelets/codelet_zherfb.c @@ -40,32 +40,33 @@ void MORSE_TASK_zherfb(const MORSE_option_t *options, struct starpu_codelet *codelet = &cl_zherfb; void (*callback)(void*) = options->profiling ? cl_zherfb_callback : NULL; - if ( morse_desc_islocal( A, Am, An ) || - morse_desc_islocal( T, Tm, Tn ) || - morse_desc_islocal( C, Cm, Cn ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &uplo, sizeof(MORSE_enum), - STARPU_VALUE, &n, sizeof(int), - STARPU_VALUE, &k, sizeof(int), - STARPU_VALUE, &ib, sizeof(int), - STARPU_VALUE, &nb, sizeof(int), - STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), - STARPU_VALUE, &lda, sizeof(int), - STARPU_R, RTBLKADDR(T, MORSE_Complex64_t, Tm, Tn), - STARPU_VALUE, &ldt, sizeof(int), - STARPU_RW, RTBLKADDR(C, MORSE_Complex64_t, Cm, Cn), - STARPU_VALUE, &ldc, sizeof(int), - STARPU_SCRATCH, options->ws_worker, - STARPU_VALUE, &nb, sizeof(int), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_R(A, Am, An); + MORSE_ACCESS_R(T, Tm, Tn); + MORSE_ACCESS_RW(C, Cm, Cn); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &uplo, sizeof(MORSE_enum), + STARPU_VALUE, &n, sizeof(int), + STARPU_VALUE, &k, sizeof(int), + STARPU_VALUE, &ib, sizeof(int), + STARPU_VALUE, &nb, sizeof(int), + STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), + STARPU_VALUE, &lda, sizeof(int), + STARPU_R, RTBLKADDR(T, MORSE_Complex64_t, Tm, Tn), + STARPU_VALUE, &ldt, sizeof(int), + STARPU_RW, RTBLKADDR(C, MORSE_Complex64_t, Cm, Cn), + STARPU_VALUE, &ldc, sizeof(int), + STARPU_SCRATCH, options->ws_worker, + STARPU_VALUE, &nb, sizeof(int), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "zherfb", + STARPU_NAME, "zherfb", #endif - 0); - } + 0); } diff --git a/runtime/starpu/codelets/codelet_zherk.c b/runtime/starpu/codelets/codelet_zherk.c index 8e0d48f6f..e5ef78021 100644 --- a/runtime/starpu/codelets/codelet_zherk.c +++ b/runtime/starpu/codelets/codelet_zherk.c @@ -47,28 +47,29 @@ void MORSE_TASK_zherk(const MORSE_option_t *options, struct starpu_codelet *codelet = &cl_zherk; void (*callback)(void*) = options->profiling ? cl_zherk_callback : NULL; - if ( morse_desc_islocal( A, Am, An ) || - morse_desc_islocal( C, Cm, Cn ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &uplo, sizeof(MORSE_enum), - STARPU_VALUE, &trans, sizeof(MORSE_enum), - STARPU_VALUE, &n, sizeof(int), - STARPU_VALUE, &k, sizeof(int), - STARPU_VALUE, &alpha, sizeof(double), - STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), - STARPU_VALUE, &lda, sizeof(int), - STARPU_VALUE, &beta, sizeof(double), - STARPU_RW, RTBLKADDR(C, MORSE_Complex64_t, Cm, Cn), - STARPU_VALUE, &ldc, sizeof(int), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_R(A, Am, An); + MORSE_ACCESS_RW(C, Cm, Cn); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &uplo, sizeof(MORSE_enum), + STARPU_VALUE, &trans, sizeof(MORSE_enum), + STARPU_VALUE, &n, sizeof(int), + STARPU_VALUE, &k, sizeof(int), + STARPU_VALUE, &alpha, sizeof(double), + STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), + STARPU_VALUE, &lda, sizeof(int), + STARPU_VALUE, &beta, sizeof(double), + STARPU_RW, RTBLKADDR(C, MORSE_Complex64_t, Cm, Cn), + STARPU_VALUE, &ldc, sizeof(int), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "zherk", + STARPU_NAME, "zherk", #endif - 0); - } + 0); } #if !defined(CHAMELEON_SIMULATION) diff --git a/runtime/starpu/codelets/codelet_zhessq.c b/runtime/starpu/codelets/codelet_zhessq.c index 11666dbce..8f9ddf984 100644 --- a/runtime/starpu/codelets/codelet_zhessq.c +++ b/runtime/starpu/codelets/codelet_zhessq.c @@ -35,23 +35,24 @@ void MORSE_TASK_zhessq( const MORSE_option_t *options, struct starpu_codelet *codelet = &cl_zhessq; void (*callback)(void*) = options->profiling ? cl_zgessq_callback : NULL; - if ( morse_desc_islocal( A, Am, An ) || - morse_desc_islocal( SCALESUMSQ, SCALESUMSQm, SCALESUMSQn ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &uplo, sizeof(MORSE_enum), - STARPU_VALUE, &n, sizeof(int), - STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), - STARPU_VALUE, &lda, sizeof(int), - STARPU_RW, RTBLKADDR(SCALESUMSQ, double, SCALESUMSQm, SCALESUMSQn), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_R(A, Am, An); + MORSE_ACCESS_RW(SCALESUMSQ, SCALESUMSQm, SCALESUMSQn); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &uplo, sizeof(MORSE_enum), + STARPU_VALUE, &n, sizeof(int), + STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), + STARPU_VALUE, &lda, sizeof(int), + STARPU_RW, RTBLKADDR(SCALESUMSQ, double, SCALESUMSQm, SCALESUMSQn), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "zhessq", + STARPU_NAME, "zhessq", #endif - 0); - } + 0); } diff --git a/runtime/starpu/codelets/codelet_zlacpy.c b/runtime/starpu/codelets/codelet_zlacpy.c index ee86f5d18..99274e183 100644 --- a/runtime/starpu/codelets/codelet_zlacpy.c +++ b/runtime/starpu/codelets/codelet_zlacpy.c @@ -47,27 +47,28 @@ void MORSE_TASK_zlacpyx(const MORSE_option_t *options, struct starpu_codelet *codelet = &cl_zlacpy; void (*callback)(void*) = options->profiling ? cl_zlacpy_callback : NULL; - if ( morse_desc_islocal( A, Am, An ) || - morse_desc_islocal( B, Bm, Bn ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &uplo, sizeof(MORSE_enum), - STARPU_VALUE, &m, sizeof(int), - STARPU_VALUE, &n, sizeof(int), - STARPU_VALUE, &displA, sizeof(int), - STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), - STARPU_VALUE, &lda, sizeof(int), - STARPU_VALUE, &displB, sizeof(int), - STARPU_W, RTBLKADDR(B, MORSE_Complex64_t, Bm, Bn), - STARPU_VALUE, &ldb, sizeof(int), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_R(A, Am, An); + MORSE_ACCESS_W(B, Bm, Bn); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &uplo, sizeof(MORSE_enum), + STARPU_VALUE, &m, sizeof(int), + STARPU_VALUE, &n, sizeof(int), + STARPU_VALUE, &displA, sizeof(int), + STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), + STARPU_VALUE, &lda, sizeof(int), + STARPU_VALUE, &displB, sizeof(int), + STARPU_W, RTBLKADDR(B, MORSE_Complex64_t, Bm, Bn), + STARPU_VALUE, &ldb, sizeof(int), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "zlacpy", + STARPU_NAME, "zlacpy", #endif - 0); - } + 0); } void MORSE_TASK_zlacpy(const MORSE_option_t *options, diff --git a/runtime/starpu/codelets/codelet_zlag2c.c b/runtime/starpu/codelets/codelet_zlag2c.c index 7390acaae..f09c80846 100644 --- a/runtime/starpu/codelets/codelet_zlag2c.c +++ b/runtime/starpu/codelets/codelet_zlag2c.c @@ -44,24 +44,25 @@ void MORSE_TASK_zlag2c(const MORSE_option_t *options, struct starpu_codelet *codelet = &cl_zlag2c; void (*callback)(void*) = options->profiling ? cl_zlag2c_callback : NULL; - if ( morse_desc_islocal( A, Am, An ) || - morse_desc_islocal( B, Bm, Bn ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &m, sizeof(int), - STARPU_VALUE, &n, sizeof(int), - STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), - STARPU_VALUE, &lda, sizeof(int), - STARPU_W, RTBLKADDR(B, MORSE_Complex32_t, Bm, Bn), - STARPU_VALUE, &ldb, sizeof(int), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_R(A, Am, An); + MORSE_ACCESS_W(B, Bm, Bn); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &m, sizeof(int), + STARPU_VALUE, &n, sizeof(int), + STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), + STARPU_VALUE, &lda, sizeof(int), + STARPU_W, RTBLKADDR(B, MORSE_Complex32_t, Bm, Bn), + STARPU_VALUE, &ldb, sizeof(int), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "zlag2c", + STARPU_NAME, "zlag2c", #endif - 0); - } + 0); } #if !defined(CHAMELEON_SIMULATION) diff --git a/runtime/starpu/codelets/codelet_zlange.c b/runtime/starpu/codelets/codelet_zlange.c index 9a1b1ebcf..9571eec74 100644 --- a/runtime/starpu/codelets/codelet_zlange.c +++ b/runtime/starpu/codelets/codelet_zlange.c @@ -39,25 +39,26 @@ void MORSE_TASK_zlange(const MORSE_option_t *options, struct starpu_codelet *codelet = &cl_zlange; void (*callback)(void*) = options->profiling ? cl_zlange_callback : NULL; - if ( morse_desc_islocal( A, Am, An ) || - morse_desc_islocal( B, Bm, Bn ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &norm, sizeof(MORSE_enum), - STARPU_VALUE, &M, sizeof(int), - STARPU_VALUE, &N, sizeof(int), - STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), - STARPU_VALUE, &LDA, sizeof(int), - STARPU_SCRATCH, options->ws_worker, - STARPU_W, RTBLKADDR(B, double, Bm, Bn), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_R(A, Am, An); + MORSE_ACCESS_W(B, Bm, Bn); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &norm, sizeof(MORSE_enum), + STARPU_VALUE, &M, sizeof(int), + STARPU_VALUE, &N, sizeof(int), + STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), + STARPU_VALUE, &LDA, sizeof(int), + STARPU_SCRATCH, options->ws_worker, + STARPU_W, RTBLKADDR(B, double, Bm, Bn), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "zlange", + STARPU_NAME, "zlange", #endif - 0); - } + 0); } #if !defined(CHAMELEON_SIMULATION) diff --git a/runtime/starpu/codelets/codelet_zlanhe.c b/runtime/starpu/codelets/codelet_zlanhe.c index 24a87f752..37725f178 100644 --- a/runtime/starpu/codelets/codelet_zlanhe.c +++ b/runtime/starpu/codelets/codelet_zlanhe.c @@ -37,25 +37,26 @@ void MORSE_TASK_zlanhe(const MORSE_option_t *options, struct starpu_codelet *codelet = &cl_zlanhe; void (*callback)(void*) = options->profiling ? cl_zlange_callback : NULL; - if ( morse_desc_islocal( A, Am, An ) || - morse_desc_islocal( B, Bm, Bn ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &norm, sizeof(MORSE_enum), - STARPU_VALUE, &uplo, sizeof(MORSE_enum), - STARPU_VALUE, &N, sizeof(int), - STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), - STARPU_VALUE, &LDA, sizeof(int), - STARPU_SCRATCH, options->ws_worker, - STARPU_W, RTBLKADDR(B, double, Bm, Bn), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_R(A, Am, An); + MORSE_ACCESS_W(B, Bm, Bn); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &norm, sizeof(MORSE_enum), + STARPU_VALUE, &uplo, sizeof(MORSE_enum), + STARPU_VALUE, &N, sizeof(int), + STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), + STARPU_VALUE, &LDA, sizeof(int), + STARPU_SCRATCH, options->ws_worker, + STARPU_W, RTBLKADDR(B, double, Bm, Bn), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "zlanhe", + STARPU_NAME, "zlanhe", #endif - 0); - } + 0); (void)NB; } diff --git a/runtime/starpu/codelets/codelet_zlansy.c b/runtime/starpu/codelets/codelet_zlansy.c index 0e3fe5933..dd01215c2 100644 --- a/runtime/starpu/codelets/codelet_zlansy.c +++ b/runtime/starpu/codelets/codelet_zlansy.c @@ -39,25 +39,26 @@ void MORSE_TASK_zlansy(const MORSE_option_t *options, struct starpu_codelet *codelet = &cl_zlansy; void (*callback)(void*) = options->profiling ? cl_zlange_callback : NULL; - if ( morse_desc_islocal( A, Am, An ) || - morse_desc_islocal( B, Bm, Bn ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &norm, sizeof(MORSE_enum), - STARPU_VALUE, &uplo, sizeof(MORSE_enum), - STARPU_VALUE, &N, sizeof(int), - STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), - STARPU_VALUE, &LDA, sizeof(int), - STARPU_SCRATCH, options->ws_worker, - STARPU_W, RTBLKADDR(B, double, Bm, Bn), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_R(A, Am, An); + MORSE_ACCESS_W(B, Bm, Bn); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &norm, sizeof(MORSE_enum), + STARPU_VALUE, &uplo, sizeof(MORSE_enum), + STARPU_VALUE, &N, sizeof(int), + STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), + STARPU_VALUE, &LDA, sizeof(int), + STARPU_SCRATCH, options->ws_worker, + STARPU_W, RTBLKADDR(B, double, Bm, Bn), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "zlansy", + STARPU_NAME, "zlansy", #endif - 0); - } + 0); } #if !defined(CHAMELEON_SIMULATION) diff --git a/runtime/starpu/codelets/codelet_zlantr.c b/runtime/starpu/codelets/codelet_zlantr.c index c6815973f..e950fd7e2 100644 --- a/runtime/starpu/codelets/codelet_zlantr.c +++ b/runtime/starpu/codelets/codelet_zlantr.c @@ -36,27 +36,28 @@ void MORSE_TASK_zlantr(const MORSE_option_t *options, struct starpu_codelet *codelet = &cl_zlantr; void (*callback)(void*) = options->profiling ? cl_zlange_callback : NULL; - if ( morse_desc_islocal( A, Am, An ) || - morse_desc_islocal( B, Bm, Bn ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &norm, sizeof(MORSE_enum), - STARPU_VALUE, &uplo, sizeof(MORSE_enum), - STARPU_VALUE, &diag, sizeof(MORSE_enum), - STARPU_VALUE, &M, sizeof(int), - STARPU_VALUE, &N, sizeof(int), - STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), - STARPU_VALUE, &LDA, sizeof(int), - STARPU_SCRATCH, options->ws_worker, - STARPU_W, RTBLKADDR(B, double, Bm, Bn), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_R(A, Am, An); + MORSE_ACCESS_W(B, Bm, Bn); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &norm, sizeof(MORSE_enum), + STARPU_VALUE, &uplo, sizeof(MORSE_enum), + STARPU_VALUE, &diag, sizeof(MORSE_enum), + STARPU_VALUE, &M, sizeof(int), + STARPU_VALUE, &N, sizeof(int), + STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), + STARPU_VALUE, &LDA, sizeof(int), + STARPU_SCRATCH, options->ws_worker, + STARPU_W, RTBLKADDR(B, double, Bm, Bn), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "zlantr", + STARPU_NAME, "zlantr", #endif - 0); - } + 0); (void)NB; } diff --git a/runtime/starpu/codelets/codelet_zlascal.c b/runtime/starpu/codelets/codelet_zlascal.c index 445ee1c31..614962ed4 100644 --- a/runtime/starpu/codelets/codelet_zlascal.c +++ b/runtime/starpu/codelets/codelet_zlascal.c @@ -71,23 +71,24 @@ void MORSE_TASK_zlascal(const MORSE_option_t *options, struct starpu_codelet *codelet = &cl_zlascal; void (*callback)(void*) = options->profiling ? cl_zlascal_callback : NULL; - if ( morse_desc_islocal( A, Am, An )) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &uplo, sizeof(MORSE_enum), - STARPU_VALUE, &m, sizeof(int), - STARPU_VALUE, &n, sizeof(int), - STARPU_VALUE, &alpha, sizeof(MORSE_Complex64_t), - STARPU_RW, RTBLKADDR(A, MORSE_Complex64_t, Am, An), - STARPU_VALUE, &lda, sizeof(int), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_RW(A, Am, An); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &uplo, sizeof(MORSE_enum), + STARPU_VALUE, &m, sizeof(int), + STARPU_VALUE, &n, sizeof(int), + STARPU_VALUE, &alpha, sizeof(MORSE_Complex64_t), + STARPU_RW, RTBLKADDR(A, MORSE_Complex64_t, Am, An), + STARPU_VALUE, &lda, sizeof(int), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "zlascal", + STARPU_NAME, "zlascal", #endif - 0); - } + 0); } diff --git a/runtime/starpu/codelets/codelet_zlaset.c b/runtime/starpu/codelets/codelet_zlaset.c index 639acdb56..fcba9efaa 100644 --- a/runtime/starpu/codelets/codelet_zlaset.c +++ b/runtime/starpu/codelets/codelet_zlaset.c @@ -77,24 +77,25 @@ void MORSE_TASK_zlaset(const MORSE_option_t *options, struct starpu_codelet *codelet = &cl_zlaset; void (*callback)(void*) = options->profiling ? cl_zlaset_callback : NULL; - if ( morse_desc_islocal( A, Am, An ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &uplo, sizeof(MORSE_enum), - STARPU_VALUE, &M, sizeof(int), - STARPU_VALUE, &N, sizeof(int), - STARPU_VALUE, &alpha, sizeof(MORSE_Complex64_t), - STARPU_VALUE, &beta, sizeof(MORSE_Complex64_t), - STARPU_W, RTBLKADDR(A, MORSE_Complex64_t, Am, An), - STARPU_VALUE, &LDA, sizeof(int), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_W(A, Am, An); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &uplo, sizeof(MORSE_enum), + STARPU_VALUE, &M, sizeof(int), + STARPU_VALUE, &N, sizeof(int), + STARPU_VALUE, &alpha, sizeof(MORSE_Complex64_t), + STARPU_VALUE, &beta, sizeof(MORSE_Complex64_t), + STARPU_W, RTBLKADDR(A, MORSE_Complex64_t, Am, An), + STARPU_VALUE, &LDA, sizeof(int), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "zlaset", + STARPU_NAME, "zlaset", #endif - 0); - } + 0); } diff --git a/runtime/starpu/codelets/codelet_zlaset2.c b/runtime/starpu/codelets/codelet_zlaset2.c index ac9e8fda8..0d5efc1de 100644 --- a/runtime/starpu/codelets/codelet_zlaset2.c +++ b/runtime/starpu/codelets/codelet_zlaset2.c @@ -74,23 +74,24 @@ void MORSE_TASK_zlaset2(const MORSE_option_t *options, struct starpu_codelet *codelet = &cl_zlaset2; void (*callback)(void*) = options->profiling ? cl_zlaset2_callback : NULL; - if ( morse_desc_islocal( A, Am, An ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &uplo, sizeof(MORSE_enum), - STARPU_VALUE, &M, sizeof(int), - STARPU_VALUE, &N, sizeof(int), - STARPU_VALUE, &alpha, sizeof(MORSE_Complex64_t), - STARPU_W, RTBLKADDR(A, MORSE_Complex64_t, Am, An), - STARPU_VALUE, &LDA, sizeof(int), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_W(A, Am, An); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &uplo, sizeof(MORSE_enum), + STARPU_VALUE, &M, sizeof(int), + STARPU_VALUE, &N, sizeof(int), + STARPU_VALUE, &alpha, sizeof(MORSE_Complex64_t), + STARPU_W, RTBLKADDR(A, MORSE_Complex64_t, Am, An), + STARPU_VALUE, &LDA, sizeof(int), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "zlaset2", + STARPU_NAME, "zlaset2", #endif - 0); - } + 0); } diff --git a/runtime/starpu/codelets/codelet_zlatro.c b/runtime/starpu/codelets/codelet_zlatro.c index 29345b442..9faa75eb6 100644 --- a/runtime/starpu/codelets/codelet_zlatro.c +++ b/runtime/starpu/codelets/codelet_zlatro.c @@ -47,26 +47,27 @@ void MORSE_TASK_zlatro(const MORSE_option_t *options, struct starpu_codelet *codelet = &cl_zlatro; void (*callback)(void*) = NULL; - if ( morse_desc_islocal( A, Am, An ) || - morse_desc_islocal( B, Bm, Bn ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &uplo, sizeof(MORSE_enum), - STARPU_VALUE, &trans, sizeof(MORSE_enum), - STARPU_VALUE, &m, sizeof(int), - STARPU_VALUE, &n, sizeof(int), - STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), - STARPU_VALUE, &lda, sizeof(int), - STARPU_W, RTBLKADDR(B, MORSE_Complex64_t, Bm, Bn), - STARPU_VALUE, &ldb, sizeof(int), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_R(A, Am, An); + MORSE_ACCESS_W(B, Bm, Bn); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &uplo, sizeof(MORSE_enum), + STARPU_VALUE, &trans, sizeof(MORSE_enum), + STARPU_VALUE, &m, sizeof(int), + STARPU_VALUE, &n, sizeof(int), + STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), + STARPU_VALUE, &lda, sizeof(int), + STARPU_W, RTBLKADDR(B, MORSE_Complex64_t, Bm, Bn), + STARPU_VALUE, &ldb, sizeof(int), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "zlatro", + STARPU_NAME, "zlatro", #endif - 0); - } + 0); (void)mb; } diff --git a/runtime/starpu/codelets/codelet_zlauum.c b/runtime/starpu/codelets/codelet_zlauum.c index 1f5876bd2..f578695ff 100644 --- a/runtime/starpu/codelets/codelet_zlauum.c +++ b/runtime/starpu/codelets/codelet_zlauum.c @@ -46,21 +46,22 @@ void MORSE_TASK_zlauum(const MORSE_option_t *options, struct starpu_codelet *codelet = &cl_zlauum; void (*callback)(void*) = options->profiling ? cl_zlauum_callback : NULL; - if ( morse_desc_islocal( A, Am, An ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &uplo, sizeof(MORSE_enum), - STARPU_VALUE, &n, sizeof(int), - STARPU_RW, RTBLKADDR(A, MORSE_Complex64_t, Am, An), - STARPU_VALUE, &lda, sizeof(int), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_RW(A, Am, An); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &uplo, sizeof(MORSE_enum), + STARPU_VALUE, &n, sizeof(int), + STARPU_RW, RTBLKADDR(A, MORSE_Complex64_t, Am, An), + STARPU_VALUE, &lda, sizeof(int), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "zlauum", + STARPU_NAME, "zlauum", #endif - 0); - } + 0); } diff --git a/runtime/starpu/codelets/codelet_zplghe.c b/runtime/starpu/codelets/codelet_zplghe.c index de57291a5..79ff9238f 100644 --- a/runtime/starpu/codelets/codelet_zplghe.c +++ b/runtime/starpu/codelets/codelet_zplghe.c @@ -41,26 +41,27 @@ void MORSE_TASK_zplghe( const MORSE_option_t *options, struct starpu_codelet *codelet = &cl_zplghe; void (*callback)(void*) = options->profiling ? cl_zplghe_callback : NULL; - if ( morse_desc_islocal( A, Am, An ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &bump, sizeof(double), - STARPU_VALUE, &m, sizeof(int), - STARPU_VALUE, &n, sizeof(int), - STARPU_W, RTBLKADDR(A, MORSE_Complex64_t, Am, An), - STARPU_VALUE, &lda, sizeof(int), - STARPU_VALUE, &bigM, sizeof(int), - STARPU_VALUE, &m0, sizeof(int), - STARPU_VALUE, &n0, sizeof(int), - STARPU_VALUE, &seed, sizeof(unsigned long long int), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_W(A, Am, An); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &bump, sizeof(double), + STARPU_VALUE, &m, sizeof(int), + STARPU_VALUE, &n, sizeof(int), + STARPU_W, RTBLKADDR(A, MORSE_Complex64_t, Am, An), + STARPU_VALUE, &lda, sizeof(int), + STARPU_VALUE, &bigM, sizeof(int), + STARPU_VALUE, &m0, sizeof(int), + STARPU_VALUE, &n0, sizeof(int), + STARPU_VALUE, &seed, sizeof(unsigned long long int), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "zplghe", + STARPU_NAME, "zplghe", #endif - 0); - } + 0); } /* cl_zplghe_cpu_func - Generate a tile for random hermitian (positive definite if bump is large enough) matrix. */ diff --git a/runtime/starpu/codelets/codelet_zplgsy.c b/runtime/starpu/codelets/codelet_zplgsy.c index 965ff11d8..cbe5f9ee2 100644 --- a/runtime/starpu/codelets/codelet_zplgsy.c +++ b/runtime/starpu/codelets/codelet_zplgsy.c @@ -42,26 +42,27 @@ void MORSE_TASK_zplgsy( const MORSE_option_t *options, struct starpu_codelet *codelet = &cl_zplgsy; void (*callback)(void*) = options->profiling ? cl_zplgsy_callback : NULL; - if ( morse_desc_islocal( A, Am, An ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &bump, sizeof(MORSE_Complex64_t), - STARPU_VALUE, &m, sizeof(int), - STARPU_VALUE, &n, sizeof(int), - STARPU_W, RTBLKADDR(A, MORSE_Complex64_t, Am, An), - STARPU_VALUE, &lda, sizeof(int), - STARPU_VALUE, &bigM, sizeof(int), - STARPU_VALUE, &m0, sizeof(int), - STARPU_VALUE, &n0, sizeof(int), - STARPU_VALUE, &seed, sizeof(unsigned long long int), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_W(A, Am, An); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &bump, sizeof(MORSE_Complex64_t), + STARPU_VALUE, &m, sizeof(int), + STARPU_VALUE, &n, sizeof(int), + STARPU_W, RTBLKADDR(A, MORSE_Complex64_t, Am, An), + STARPU_VALUE, &lda, sizeof(int), + STARPU_VALUE, &bigM, sizeof(int), + STARPU_VALUE, &m0, sizeof(int), + STARPU_VALUE, &n0, sizeof(int), + STARPU_VALUE, &seed, sizeof(unsigned long long int), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "zplgsy", + STARPU_NAME, "zplgsy", #endif - 0); - } + 0); } /* cl_zplgsy_cpu_func - Generate a tile for random symmetric (positive definite if 'bump' is large enough) matrix. */ diff --git a/runtime/starpu/codelets/codelet_zplrnt.c b/runtime/starpu/codelets/codelet_zplrnt.c index 12bd1dfbd..b8c96b263 100644 --- a/runtime/starpu/codelets/codelet_zplrnt.c +++ b/runtime/starpu/codelets/codelet_zplrnt.c @@ -41,25 +41,27 @@ void MORSE_TASK_zplrnt( const MORSE_option_t *options, struct starpu_codelet *codelet = &cl_zplrnt; void (*callback)(void*) = options->profiling ? cl_zplrnt_callback : NULL; - if ( morse_desc_islocal( A, Am, An ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &m, sizeof(int), - STARPU_VALUE, &n, sizeof(int), - STARPU_W, RTBLKADDR(A, MORSE_Complex64_t, Am, An), - STARPU_VALUE, &lda, sizeof(int), - STARPU_VALUE, &bigM, sizeof(int), - STARPU_VALUE, &m0, sizeof(int), - STARPU_VALUE, &n0, sizeof(int), - STARPU_VALUE, &seed, sizeof(unsigned long long int), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_W(A, Am, An); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &m, sizeof(int), + STARPU_VALUE, &n, sizeof(int), + STARPU_W, RTBLKADDR(A, MORSE_Complex64_t, Am, An), + STARPU_VALUE, &lda, sizeof(int), + STARPU_VALUE, &bigM, sizeof(int), + STARPU_VALUE, &m0, sizeof(int), + STARPU_VALUE, &n0, sizeof(int), + STARPU_VALUE, &seed, sizeof(unsigned long long int), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "zplrnt", + STARPU_NAME, "zplrnt", #endif - 0); - } + 0); } /* cl_zplrnt_cpu_func - Generate a tile for random matrix. */ diff --git a/runtime/starpu/codelets/codelet_zplssq.c b/runtime/starpu/codelets/codelet_zplssq.c index 0c85274d1..75538476e 100644 --- a/runtime/starpu/codelets/codelet_zplssq.c +++ b/runtime/starpu/codelets/codelet_zplssq.c @@ -66,20 +66,21 @@ void MORSE_TASK_zplssq( const MORSE_option_t *options, struct starpu_codelet *codelet = &cl_zplssq; void (*callback)(void*) = options->profiling ? cl_zplssq_callback : NULL; - if ( morse_desc_islocal( SCALESUMSQ, SCALESUMSQm, SCALESUMSQn ) || - morse_desc_islocal( SCLSSQ, SCLSSQm, SCLSSQn ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_R, RTBLKADDR(SCALESUMSQ, double, SCALESUMSQm, SCALESUMSQn), - STARPU_RW, RTBLKADDR(SCLSSQ, double, SCLSSQm, SCLSSQn), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_R(SCALESUMSQ, SCALESUMSQm, SCALESUMSQn); + MORSE_ACCESS_RW(SCLSSQ, SCLSSQm, SCLSSQn); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_R, RTBLKADDR(SCALESUMSQ, double, SCALESUMSQm, SCALESUMSQn), + STARPU_RW, RTBLKADDR(SCLSSQ, double, SCLSSQm, SCLSSQn), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "zplssq", + STARPU_NAME, "zplssq", #endif - 0); - } + 0); } diff --git a/runtime/starpu/codelets/codelet_zpotrf.c b/runtime/starpu/codelets/codelet_zpotrf.c index 2f5e6cfc9..857cf3356 100644 --- a/runtime/starpu/codelets/codelet_zpotrf.c +++ b/runtime/starpu/codelets/codelet_zpotrf.c @@ -47,23 +47,24 @@ void MORSE_TASK_zpotrf(const MORSE_option_t *options, struct starpu_codelet *codelet = &cl_zpotrf; void (*callback)(void*) = options->profiling ? cl_zpotrf_callback : NULL; - if ( morse_desc_islocal( A, Am, An ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &uplo, sizeof(MORSE_enum), - STARPU_VALUE, &n, sizeof(int), - STARPU_RW, RTBLKADDR(A, MORSE_Complex64_t, Am, An), - STARPU_VALUE, &lda, sizeof(int), - STARPU_VALUE, &iinfo, sizeof(int), - /* STARPU_SCRATCH, options->ws_worker, */ - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_RW(A, Am, An); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &uplo, sizeof(MORSE_enum), + STARPU_VALUE, &n, sizeof(int), + STARPU_RW, RTBLKADDR(A, MORSE_Complex64_t, Am, An), + STARPU_VALUE, &lda, sizeof(int), + STARPU_VALUE, &iinfo, sizeof(int), + /* STARPU_SCRATCH, options->ws_worker, */ + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "zpotrf", + STARPU_NAME, "zpotrf", #endif - 0); - } + 0); } diff --git a/runtime/starpu/codelets/codelet_zssssm.c b/runtime/starpu/codelets/codelet_zssssm.c index 20dfcd9da..a1fae08bb 100644 --- a/runtime/starpu/codelets/codelet_zssssm.c +++ b/runtime/starpu/codelets/codelet_zssssm.c @@ -115,35 +115,36 @@ void MORSE_TASK_zssssm(const MORSE_option_t *options, struct starpu_codelet *codelet = &cl_zssssm; void (*callback)(void*) = options->profiling ? cl_zssssm_callback : NULL; - if ( morse_desc_islocal( A1, A1m, A1n ) || - morse_desc_islocal( A2, A2m, A2n ) || - morse_desc_islocal( L1, L1m, L1n ) || - morse_desc_islocal( L2, L2m, L2n ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &m1, sizeof(int), - STARPU_VALUE, &n1, sizeof(int), - STARPU_VALUE, &m2, sizeof(int), - STARPU_VALUE, &n2, sizeof(int), - STARPU_VALUE, &k, sizeof(int), - STARPU_VALUE, &ib, sizeof(int), - STARPU_RW, RTBLKADDR(A1, MORSE_Complex64_t, A1m, A1n), - STARPU_VALUE, &lda1, sizeof(int), - STARPU_RW, RTBLKADDR(A2, MORSE_Complex64_t, A2m, A2n), - STARPU_VALUE, &lda2, sizeof(int), - STARPU_R, RTBLKADDR(L1, MORSE_Complex64_t, L1m, L1n), - STARPU_VALUE, &ldl1, sizeof(int), - STARPU_R, RTBLKADDR(L2, MORSE_Complex64_t, L2m, L2n), - STARPU_VALUE, &ldl2, sizeof(int), - STARPU_VALUE, &IPIV, sizeof(int*), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_RW(A1, A1m, A1n); + MORSE_ACCESS_RW(A2, A2m, A2n); + MORSE_ACCESS_R(L1, L1m, L1n); + MORSE_ACCESS_R(L2, L2m, L2n); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &m1, sizeof(int), + STARPU_VALUE, &n1, sizeof(int), + STARPU_VALUE, &m2, sizeof(int), + STARPU_VALUE, &n2, sizeof(int), + STARPU_VALUE, &k, sizeof(int), + STARPU_VALUE, &ib, sizeof(int), + STARPU_RW, RTBLKADDR(A1, MORSE_Complex64_t, A1m, A1n), + STARPU_VALUE, &lda1, sizeof(int), + STARPU_RW, RTBLKADDR(A2, MORSE_Complex64_t, A2m, A2n), + STARPU_VALUE, &lda2, sizeof(int), + STARPU_R, RTBLKADDR(L1, MORSE_Complex64_t, L1m, L1n), + STARPU_VALUE, &ldl1, sizeof(int), + STARPU_R, RTBLKADDR(L2, MORSE_Complex64_t, L2m, L2n), + STARPU_VALUE, &ldl2, sizeof(int), + STARPU_VALUE, &IPIV, sizeof(int*), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "zssssm", + STARPU_NAME, "zssssm", #endif - 0); - } + 0); } diff --git a/runtime/starpu/codelets/codelet_zsymm.c b/runtime/starpu/codelets/codelet_zsymm.c index 78ad94c01..71e6b8670 100644 --- a/runtime/starpu/codelets/codelet_zsymm.c +++ b/runtime/starpu/codelets/codelet_zsymm.c @@ -48,31 +48,32 @@ void MORSE_TASK_zsymm(const MORSE_option_t *options, struct starpu_codelet *codelet = &cl_zsymm; void (*callback)(void*) = options->profiling ? cl_zsymm_callback : NULL; - if ( morse_desc_islocal( A, Am, An ) || - morse_desc_islocal( B, Bm, Bn ) || - morse_desc_islocal( C, Cm, Cn ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &side, sizeof(MORSE_enum), - STARPU_VALUE, &uplo, sizeof(MORSE_enum), - STARPU_VALUE, &m, sizeof(int), - STARPU_VALUE, &n, sizeof(int), - STARPU_VALUE, &alpha, sizeof(MORSE_Complex64_t), - STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), - STARPU_VALUE, &lda, sizeof(int), - STARPU_R, RTBLKADDR(B, MORSE_Complex64_t, Bm, Bn), - STARPU_VALUE, &ldb, sizeof(int), - STARPU_VALUE, &beta, sizeof(MORSE_Complex64_t), - STARPU_RW, RTBLKADDR(C, MORSE_Complex64_t, Cm, Cn), - STARPU_VALUE, &ldc, sizeof(int), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_R(A, Am, An); + MORSE_ACCESS_R(B, Bm, Bn); + MORSE_ACCESS_RW(C, Cm, Cn); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &side, sizeof(MORSE_enum), + STARPU_VALUE, &uplo, sizeof(MORSE_enum), + STARPU_VALUE, &m, sizeof(int), + STARPU_VALUE, &n, sizeof(int), + STARPU_VALUE, &alpha, sizeof(MORSE_Complex64_t), + STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), + STARPU_VALUE, &lda, sizeof(int), + STARPU_R, RTBLKADDR(B, MORSE_Complex64_t, Bm, Bn), + STARPU_VALUE, &ldb, sizeof(int), + STARPU_VALUE, &beta, sizeof(MORSE_Complex64_t), + STARPU_RW, RTBLKADDR(C, MORSE_Complex64_t, Cm, Cn), + STARPU_VALUE, &ldc, sizeof(int), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "zsymm", + STARPU_NAME, "zsymm", #endif - 0); - } + 0); } diff --git a/runtime/starpu/codelets/codelet_zsyr2k.c b/runtime/starpu/codelets/codelet_zsyr2k.c index d2a59d995..cafe3887e 100644 --- a/runtime/starpu/codelets/codelet_zsyr2k.c +++ b/runtime/starpu/codelets/codelet_zsyr2k.c @@ -48,31 +48,32 @@ void MORSE_TASK_zsyr2k(const MORSE_option_t *options, struct starpu_codelet *codelet = &cl_zsyr2k; void (*callback)(void*) = options->profiling ? cl_zsyr2k_callback : NULL; - if ( morse_desc_islocal( A, Am, An ) || - morse_desc_islocal( B, Bm, Bn ) || - morse_desc_islocal( C, Cm, Cn ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &uplo, sizeof(MORSE_enum), - STARPU_VALUE, &trans, sizeof(MORSE_enum), - STARPU_VALUE, &n, sizeof(int), - STARPU_VALUE, &k, sizeof(int), - STARPU_VALUE, &alpha, sizeof(MORSE_Complex64_t), - STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), - STARPU_VALUE, &lda, sizeof(int), - STARPU_R, RTBLKADDR(B, MORSE_Complex64_t, Bm, Bn), - STARPU_VALUE, &ldb, sizeof(int), - STARPU_VALUE, &beta, sizeof(MORSE_Complex64_t), - STARPU_RW, RTBLKADDR(C, MORSE_Complex64_t, Cm, Cn), - STARPU_VALUE, &ldc, sizeof(int), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_R(A, Am, An); + MORSE_ACCESS_R(B, Bm, Bn); + MORSE_ACCESS_RW(C, Cm, Cn); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &uplo, sizeof(MORSE_enum), + STARPU_VALUE, &trans, sizeof(MORSE_enum), + STARPU_VALUE, &n, sizeof(int), + STARPU_VALUE, &k, sizeof(int), + STARPU_VALUE, &alpha, sizeof(MORSE_Complex64_t), + STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), + STARPU_VALUE, &lda, sizeof(int), + STARPU_R, RTBLKADDR(B, MORSE_Complex64_t, Bm, Bn), + STARPU_VALUE, &ldb, sizeof(int), + STARPU_VALUE, &beta, sizeof(MORSE_Complex64_t), + STARPU_RW, RTBLKADDR(C, MORSE_Complex64_t, Cm, Cn), + STARPU_VALUE, &ldc, sizeof(int), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "zsyr2k", + STARPU_NAME, "zsyr2k", #endif - 0); - } + 0); } diff --git a/runtime/starpu/codelets/codelet_zsyrk.c b/runtime/starpu/codelets/codelet_zsyrk.c index c38981ef4..b368779f5 100644 --- a/runtime/starpu/codelets/codelet_zsyrk.c +++ b/runtime/starpu/codelets/codelet_zsyrk.c @@ -47,28 +47,29 @@ void MORSE_TASK_zsyrk(const MORSE_option_t *options, struct starpu_codelet *codelet = &cl_zsyrk; void (*callback)(void*) = options->profiling ? cl_zsyrk_callback : NULL; - if ( morse_desc_islocal( A, Am, An ) || - morse_desc_islocal( C, Cm, Cn ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &uplo, sizeof(MORSE_enum), - STARPU_VALUE, &trans, sizeof(MORSE_enum), - STARPU_VALUE, &n, sizeof(int), - STARPU_VALUE, &k, sizeof(int), - STARPU_VALUE, &alpha, sizeof(MORSE_Complex64_t), - STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), - STARPU_VALUE, &lda, sizeof(int), - STARPU_VALUE, &beta, sizeof(MORSE_Complex64_t), - STARPU_RW, RTBLKADDR(C, MORSE_Complex64_t, Cm, Cn), - STARPU_VALUE, &ldc, sizeof(int), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_R(A, Am, An); + MORSE_ACCESS_RW(C, Cm, Cn); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &uplo, sizeof(MORSE_enum), + STARPU_VALUE, &trans, sizeof(MORSE_enum), + STARPU_VALUE, &n, sizeof(int), + STARPU_VALUE, &k, sizeof(int), + STARPU_VALUE, &alpha, sizeof(MORSE_Complex64_t), + STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), + STARPU_VALUE, &lda, sizeof(int), + STARPU_VALUE, &beta, sizeof(MORSE_Complex64_t), + STARPU_RW, RTBLKADDR(C, MORSE_Complex64_t, Cm, Cn), + STARPU_VALUE, &ldc, sizeof(int), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "zsyrk", + STARPU_NAME, "zsyrk", #endif - 0); - } + 0); } diff --git a/runtime/starpu/codelets/codelet_zsyssq.c b/runtime/starpu/codelets/codelet_zsyssq.c index 7335678bd..2bdeb1e9d 100644 --- a/runtime/starpu/codelets/codelet_zsyssq.c +++ b/runtime/starpu/codelets/codelet_zsyssq.c @@ -34,23 +34,25 @@ void MORSE_TASK_zsyssq( const MORSE_option_t *options, { struct starpu_codelet *codelet = &cl_zsyssq; void (*callback)(void*) = options->profiling ? cl_zgessq_callback : NULL; - if ( morse_desc_islocal( A, Am, An ) || - morse_desc_islocal( SCALESUMSQ, SCALESUMSQm, SCALESUMSQn ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &uplo, sizeof(MORSE_enum), - STARPU_VALUE, &n, sizeof(int), - STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), - STARPU_VALUE, &lda, sizeof(int), - STARPU_RW, RTBLKADDR(SCALESUMSQ, double, SCALESUMSQm, SCALESUMSQn), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_R(A, Am, An); + MORSE_ACCESS_R(SCALESUMSQ, SCALESUMSQm, SCALESUMSQn); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &uplo, sizeof(MORSE_enum), + STARPU_VALUE, &n, sizeof(int), + STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), + STARPU_VALUE, &lda, sizeof(int), + STARPU_RW, RTBLKADDR(SCALESUMSQ, double, SCALESUMSQm, SCALESUMSQn), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "zsyssq", + STARPU_NAME, "zsyssq", #endif - 0); - } + 0); } diff --git a/runtime/starpu/codelets/codelet_zsytrf_nopiv.c b/runtime/starpu/codelets/codelet_zsytrf_nopiv.c index a1592b9aa..002591071 100644 --- a/runtime/starpu/codelets/codelet_zsytrf_nopiv.c +++ b/runtime/starpu/codelets/codelet_zsytrf_nopiv.c @@ -41,23 +41,24 @@ void MORSE_TASK_zsytrf_nopiv(const MORSE_option_t *options, struct starpu_codelet *codelet = &cl_zsytrf_nopiv; void (*callback)(void*) = options->profiling ? cl_zsytrf_nopiv_callback : NULL; - if ( morse_desc_islocal( A, Am, An ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &uplo, sizeof(MORSE_enum), - STARPU_VALUE, &n, sizeof(int), - STARPU_RW, RTBLKADDR(A, MORSE_Complex64_t, Am, An), - STARPU_VALUE, &lda, sizeof(int), - STARPU_VALUE, &iinfo, sizeof(int), - /* STARPU_SCRATCH, options->ws_worker, */ - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_RW(A, Am, An); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &uplo, sizeof(MORSE_enum), + STARPU_VALUE, &n, sizeof(int), + STARPU_RW, RTBLKADDR(A, MORSE_Complex64_t, Am, An), + STARPU_VALUE, &lda, sizeof(int), + STARPU_VALUE, &iinfo, sizeof(int), + /* STARPU_SCRATCH, options->ws_worker, */ + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "zsytrf_nopiv", + STARPU_NAME, "zsytrf_nopiv", #endif - 0); - } + 0); } diff --git a/runtime/starpu/codelets/codelet_ztile_zero.c b/runtime/starpu/codelets/codelet_ztile_zero.c index 553729e36..09e5bdc83 100644 --- a/runtime/starpu/codelets/codelet_ztile_zero.c +++ b/runtime/starpu/codelets/codelet_ztile_zero.c @@ -38,23 +38,24 @@ void MORSE_TASK_ztile_zero(const const MORSE_option_t *options, codelet = &cl_ztile_zero; void (*callback)(void*) = options->profiling ? cl_zlacpy_callback : NULL; - if ( morse_desc_islocal( A, Am, An ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &X1, sizeof(int), - STARPU_VALUE, &X2, sizeof(int), - STARPU_VALUE, &Y1, sizeof(int), - STARPU_VALUE, &Y2, sizeof(int), - STARPU_RW, RTBLKADDR(A, MORSE_Complex64_t, Am, An), - STARPU_VALUE, &lda, sizeof(int), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, NULL, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_RW(A, Am, An); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &X1, sizeof(int), + STARPU_VALUE, &X2, sizeof(int), + STARPU_VALUE, &Y1, sizeof(int), + STARPU_VALUE, &Y2, sizeof(int), + STARPU_RW, RTBLKADDR(A, MORSE_Complex64_t, Am, An), + STARPU_VALUE, &lda, sizeof(int), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, NULL, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "ztile_zero", + STARPU_NAME, "ztile_zero", #endif - 0); - } + 0); } /***************************************************************************** diff --git a/runtime/starpu/codelets/codelet_ztpmqrt.c b/runtime/starpu/codelets/codelet_ztpmqrt.c index e1743543e..088d69fb9 100644 --- a/runtime/starpu/codelets/codelet_ztpmqrt.c +++ b/runtime/starpu/codelets/codelet_ztpmqrt.c @@ -36,37 +36,38 @@ void MORSE_TASK_ztpmqrt( const MORSE_option_t *options, struct starpu_codelet *codelet = &cl_ztpmqrt; void (*callback)(void*) = options->profiling ? cl_ztpmqrt_callback : NULL; - if ( morse_desc_islocal( A, Am, An ) || - morse_desc_islocal( B, Bm, Bn ) || - morse_desc_islocal( V, Vm, Vn ) || - morse_desc_islocal( T, Tm, Tn ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &side, sizeof(MORSE_enum), - STARPU_VALUE, &trans, sizeof(MORSE_enum), - STARPU_VALUE, &M, sizeof(int), - STARPU_VALUE, &N, sizeof(int), - STARPU_VALUE, &K, sizeof(int), - STARPU_VALUE, &L, sizeof(int), - STARPU_VALUE, &ib, sizeof(int), - STARPU_R, RTBLKADDR(V, MORSE_Complex64_t, Vm, Vn), - STARPU_VALUE, &ldv, sizeof(int), - STARPU_R, RTBLKADDR(T, MORSE_Complex64_t, Tm, Tn), - STARPU_VALUE, &ldt, sizeof(int), - STARPU_RW, RTBLKADDR(A, MORSE_Complex64_t, Am, An), - STARPU_VALUE, &lda, sizeof(int), - STARPU_RW, RTBLKADDR(B, MORSE_Complex64_t, Bm, Bn), - STARPU_VALUE, &ldb, sizeof(int), - /* Other options */ - STARPU_SCRATCH, options->ws_worker, - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_R(A, Am, An); + MORSE_ACCESS_R(B, Bm, Bn); + MORSE_ACCESS_RW(V, Vm, Vn); + MORSE_ACCESS_RW(T, Tm, Tn); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &side, sizeof(MORSE_enum), + STARPU_VALUE, &trans, sizeof(MORSE_enum), + STARPU_VALUE, &M, sizeof(int), + STARPU_VALUE, &N, sizeof(int), + STARPU_VALUE, &K, sizeof(int), + STARPU_VALUE, &L, sizeof(int), + STARPU_VALUE, &ib, sizeof(int), + STARPU_R, RTBLKADDR(V, MORSE_Complex64_t, Vm, Vn), + STARPU_VALUE, &ldv, sizeof(int), + STARPU_R, RTBLKADDR(T, MORSE_Complex64_t, Tm, Tn), + STARPU_VALUE, &ldt, sizeof(int), + STARPU_RW, RTBLKADDR(A, MORSE_Complex64_t, Am, An), + STARPU_VALUE, &lda, sizeof(int), + STARPU_RW, RTBLKADDR(B, MORSE_Complex64_t, Bm, Bn), + STARPU_VALUE, &ldb, sizeof(int), + /* Other options */ + STARPU_SCRATCH, options->ws_worker, + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "ztpmqrt", + STARPU_NAME, "ztpmqrt", #endif - 0); - } + 0); (void)ib; (void)nb; } diff --git a/runtime/starpu/codelets/codelet_ztpqrt.c b/runtime/starpu/codelets/codelet_ztpqrt.c index bda639581..353072f24 100644 --- a/runtime/starpu/codelets/codelet_ztpqrt.c +++ b/runtime/starpu/codelets/codelet_ztpqrt.c @@ -34,31 +34,32 @@ void MORSE_TASK_ztpqrt( const MORSE_option_t *options, struct starpu_codelet *codelet = &cl_ztpqrt; void (*callback)(void*) = options->profiling ? cl_ztpqrt_callback : NULL; - if ( morse_desc_islocal( A, Am, An ) || - morse_desc_islocal( B, Bm, Bn ) || - morse_desc_islocal( T, Tm, Tn ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &M, sizeof(int), - STARPU_VALUE, &N, sizeof(int), - STARPU_VALUE, &L, sizeof(int), - STARPU_VALUE, &ib, sizeof(int), - STARPU_RW, RTBLKADDR(A, MORSE_Complex64_t, Am, An), - STARPU_VALUE, &lda, sizeof(int), - STARPU_RW, RTBLKADDR(B, MORSE_Complex64_t, Bm, Bn), - STARPU_VALUE, &ldb, sizeof(int), - STARPU_RW, RTBLKADDR(T, MORSE_Complex64_t, Tm, Tn), - STARPU_VALUE, &ldt, sizeof(int), - /* Other options */ - STARPU_SCRATCH, options->ws_worker, - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_RW(A, Am, An); + MORSE_ACCESS_RW(B, Bm, Bn); + MORSE_ATTESS_RW(T, Tm, Tn); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &M, sizeof(int), + STARPU_VALUE, &N, sizeof(int), + STARPU_VALUE, &L, sizeof(int), + STARPU_VALUE, &ib, sizeof(int), + STARPU_RW, RTBLKADDR(A, MORSE_Complex64_t, Am, An), + STARPU_VALUE, &lda, sizeof(int), + STARPU_RW, RTBLKADDR(B, MORSE_Complex64_t, Bm, Bn), + STARPU_VALUE, &ldb, sizeof(int), + STARPU_RW, RTBLKADDR(T, MORSE_Complex64_t, Tm, Tn), + STARPU_VALUE, &ldt, sizeof(int), + /* Other options */ + STARPU_SCRATCH, options->ws_worker, + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "ztpqrt", + STARPU_NAME, "ztpqrt", #endif - 0); - } + 0); (void)ib; (void)nb; } diff --git a/runtime/starpu/codelets/codelet_ztradd.c b/runtime/starpu/codelets/codelet_ztradd.c index 9147e25af..ffce0ea3f 100644 --- a/runtime/starpu/codelets/codelet_ztradd.c +++ b/runtime/starpu/codelets/codelet_ztradd.c @@ -95,28 +95,29 @@ void MORSE_TASK_ztradd(const MORSE_option_t *options, struct starpu_codelet *codelet = &cl_ztradd; void (*callback)(void*) = options->profiling ? cl_zgeadd_callback : NULL; - if ( morse_desc_islocal( A, Am, An ) || - morse_desc_islocal( B, Bm, Bn ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &uplo, sizeof(MORSE_enum), - STARPU_VALUE, &trans, sizeof(MORSE_enum), - STARPU_VALUE, &m, sizeof(int), - STARPU_VALUE, &n, sizeof(int), - STARPU_VALUE, &alpha, sizeof(MORSE_Complex64_t), - STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), - STARPU_VALUE, &lda, sizeof(int), - STARPU_VALUE, &beta, sizeof(MORSE_Complex64_t), - STARPU_RW, RTBLKADDR(B, MORSE_Complex64_t, Bm, Bn), - STARPU_VALUE, &ldb, sizeof(int), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_R(A, Am, An); + MORSE_ACCESS_RW(B, Bm, Bn); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &uplo, sizeof(MORSE_enum), + STARPU_VALUE, &trans, sizeof(MORSE_enum), + STARPU_VALUE, &m, sizeof(int), + STARPU_VALUE, &n, sizeof(int), + STARPU_VALUE, &alpha, sizeof(MORSE_Complex64_t), + STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), + STARPU_VALUE, &lda, sizeof(int), + STARPU_VALUE, &beta, sizeof(MORSE_Complex64_t), + STARPU_RW, RTBLKADDR(B, MORSE_Complex64_t, Bm, Bn), + STARPU_VALUE, &ldb, sizeof(int), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "ztradd", + STARPU_NAME, "ztradd", #endif - 0); - } + 0); (void)nb; } diff --git a/runtime/starpu/codelets/codelet_ztrasm.c b/runtime/starpu/codelets/codelet_ztrasm.c index 859e26888..03e30ff6c 100644 --- a/runtime/starpu/codelets/codelet_ztrasm.c +++ b/runtime/starpu/codelets/codelet_ztrasm.c @@ -34,6 +34,12 @@ void MORSE_TASK_ztrasm(const MORSE_option_t *options, { struct starpu_codelet *codelet = &cl_ztrasm; void (*callback)(void*) = options->profiling ? cl_ztrasm_callback : NULL; + + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_R(A, Am, An); + MORSE_ACCESS_RW(B, Bm, Bn); + MORSE_END_ACCESS_DECLARATION; + starpu_insert_task( starpu_mpi_codelet(codelet), STARPU_VALUE, &storev, sizeof(MORSE_enum), diff --git a/runtime/starpu/codelets/codelet_ztrmm.c b/runtime/starpu/codelets/codelet_ztrmm.c index 0072d1f24..ca5484870 100644 --- a/runtime/starpu/codelets/codelet_ztrmm.c +++ b/runtime/starpu/codelets/codelet_ztrmm.c @@ -47,29 +47,30 @@ void MORSE_TASK_ztrmm(const MORSE_option_t *options, struct starpu_codelet *codelet = &cl_ztrmm; void (*callback)(void*) = options->profiling ? cl_ztrmm_callback : NULL; - if ( morse_desc_islocal( A, Am, An ) || - morse_desc_islocal( B, Bm, Bn ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &side, sizeof(MORSE_enum), - STARPU_VALUE, &uplo, sizeof(MORSE_enum), - STARPU_VALUE, &transA, sizeof(MORSE_enum), - STARPU_VALUE, &diag, sizeof(MORSE_enum), - STARPU_VALUE, &m, sizeof(int), - STARPU_VALUE, &n, sizeof(int), - STARPU_VALUE, &alpha, sizeof(MORSE_Complex64_t), - STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), - STARPU_VALUE, &lda, sizeof(int), - STARPU_RW, RTBLKADDR(B, MORSE_Complex64_t, Bm, Bn), - STARPU_VALUE, &ldb, sizeof(int), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_R(A, Am, An); + MORSE_ACCESS_RW(B, Bm, Bn); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &side, sizeof(MORSE_enum), + STARPU_VALUE, &uplo, sizeof(MORSE_enum), + STARPU_VALUE, &transA, sizeof(MORSE_enum), + STARPU_VALUE, &diag, sizeof(MORSE_enum), + STARPU_VALUE, &m, sizeof(int), + STARPU_VALUE, &n, sizeof(int), + STARPU_VALUE, &alpha, sizeof(MORSE_Complex64_t), + STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), + STARPU_VALUE, &lda, sizeof(int), + STARPU_RW, RTBLKADDR(B, MORSE_Complex64_t, Bm, Bn), + STARPU_VALUE, &ldb, sizeof(int), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "ztrmm", + STARPU_NAME, "ztrmm", #endif - 0); - } + 0); } diff --git a/runtime/starpu/codelets/codelet_ztrsm.c b/runtime/starpu/codelets/codelet_ztrsm.c index dbed609de..061c26412 100644 --- a/runtime/starpu/codelets/codelet_ztrsm.c +++ b/runtime/starpu/codelets/codelet_ztrsm.c @@ -64,34 +64,35 @@ void MORSE_TASK_ztrsm(const MORSE_option_t *options, rank_changed=1; } - if ( morse_desc_islocal( A, Am, An ) || - morse_desc_islocal( B, Bm, Bn ) || - rank_changed - ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &side, sizeof(MORSE_enum), - STARPU_VALUE, &uplo, sizeof(MORSE_enum), - STARPU_VALUE, &transA, sizeof(MORSE_enum), - STARPU_VALUE, &diag, sizeof(MORSE_enum), - STARPU_VALUE, &m, sizeof(int), - STARPU_VALUE, &n, sizeof(int), - STARPU_VALUE, &alpha, sizeof(MORSE_Complex64_t), - STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), - STARPU_VALUE, &lda, sizeof(int), - STARPU_RW, RTBLKADDR(B, MORSE_Complex64_t, Bm, Bn), - STARPU_VALUE, &ldb, sizeof(int), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_R(A, Am, An); + MORSE_ACCESS_RW(B, Bm, Bn); + if (rank_changed) + MORSE_RANK_CHANGED; + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &side, sizeof(MORSE_enum), + STARPU_VALUE, &uplo, sizeof(MORSE_enum), + STARPU_VALUE, &transA, sizeof(MORSE_enum), + STARPU_VALUE, &diag, sizeof(MORSE_enum), + STARPU_VALUE, &m, sizeof(int), + STARPU_VALUE, &n, sizeof(int), + STARPU_VALUE, &alpha, sizeof(MORSE_Complex64_t), + STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), + STARPU_VALUE, &lda, sizeof(int), + STARPU_RW, RTBLKADDR(B, MORSE_Complex64_t, Bm, Bn), + STARPU_VALUE, &ldb, sizeof(int), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_USE_MPI) - STARPU_EXECUTE_ON_NODE, execution_rank, + STARPU_EXECUTE_ON_NODE, execution_rank, #endif #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "ztrsm", + STARPU_NAME, "ztrsm", #endif - 0); - } + 0); } diff --git a/runtime/starpu/codelets/codelet_ztrssq.c b/runtime/starpu/codelets/codelet_ztrssq.c index ce8751569..578b318ce 100644 --- a/runtime/starpu/codelets/codelet_ztrssq.c +++ b/runtime/starpu/codelets/codelet_ztrssq.c @@ -35,25 +35,27 @@ void MORSE_TASK_ztrssq( const MORSE_option_t *options, { struct starpu_codelet *codelet = &cl_ztrssq; void (*callback)(void*) = options->profiling ? cl_ztrasm_callback : NULL; - if ( morse_desc_islocal( A, Am, An ) || - morse_desc_islocal( SCALESUMSQ, SCALESUMSQm, SCALESUMSQn ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &uplo, sizeof(MORSE_enum), - STARPU_VALUE, &diag, sizeof(MORSE_enum), - STARPU_VALUE, &m, sizeof(int), - STARPU_VALUE, &n, sizeof(int), - STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), - STARPU_VALUE, &lda, sizeof(int), - STARPU_RW, RTBLKADDR(SCALESUMSQ, double, SCALESUMSQm, SCALESUMSQn), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_R(A, Am, An); + MORSE_ACCESS_RW(SCALESUMSQ, SCALESUMSQm, SCALESUMSQn); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &uplo, sizeof(MORSE_enum), + STARPU_VALUE, &diag, sizeof(MORSE_enum), + STARPU_VALUE, &m, sizeof(int), + STARPU_VALUE, &n, sizeof(int), + STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), + STARPU_VALUE, &lda, sizeof(int), + STARPU_RW, RTBLKADDR(SCALESUMSQ, double, SCALESUMSQm, SCALESUMSQn), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "ztrssq", + STARPU_NAME, "ztrssq", #endif - 0); - } + 0); } diff --git a/runtime/starpu/codelets/codelet_ztrtri.c b/runtime/starpu/codelets/codelet_ztrtri.c index 4d4b8a23c..1f619cd09 100644 --- a/runtime/starpu/codelets/codelet_ztrtri.c +++ b/runtime/starpu/codelets/codelet_ztrtri.c @@ -48,23 +48,24 @@ void MORSE_TASK_ztrtri(const MORSE_option_t *options, struct starpu_codelet *codelet = &cl_ztrtri; void (*callback)(void*) = options->profiling ? cl_ztrtri_callback : NULL; - if ( morse_desc_islocal( A, Am, An ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &uplo, sizeof(MORSE_enum), - STARPU_VALUE, &diag, sizeof(MORSE_enum), - STARPU_VALUE, &n, sizeof(int), - STARPU_RW, RTBLKADDR(A, MORSE_Complex64_t, Am, An), - STARPU_VALUE, &lda, sizeof(int), - STARPU_VALUE, &iinfo, sizeof(int), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_RW(A, Am, An); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &uplo, sizeof(MORSE_enum), + STARPU_VALUE, &diag, sizeof(MORSE_enum), + STARPU_VALUE, &n, sizeof(int), + STARPU_RW, RTBLKADDR(A, MORSE_Complex64_t, Am, An), + STARPU_VALUE, &lda, sizeof(int), + STARPU_VALUE, &iinfo, sizeof(int), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "ztrtri", + STARPU_NAME, "ztrtri", #endif - 0); - } + 0); } diff --git a/runtime/starpu/codelets/codelet_ztslqt.c b/runtime/starpu/codelets/codelet_ztslqt.c index 04c75182b..378030827 100644 --- a/runtime/starpu/codelets/codelet_ztslqt.c +++ b/runtime/starpu/codelets/codelet_ztslqt.c @@ -119,32 +119,33 @@ void MORSE_TASK_ztslqt(const MORSE_option_t *options, void (*callback)(void*) = options->profiling ? cl_ztslqt_callback : NULL; MORSE_starpu_ws_t *h_work = (MORSE_starpu_ws_t*)(options->ws_host); - if ( morse_desc_islocal( A1, A1m, A1n ) || - morse_desc_islocal( A2, A2m, A2n ) || - morse_desc_islocal( T, Tm, Tn ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &m, sizeof(int), - STARPU_VALUE, &n, sizeof(int), - STARPU_VALUE, &ib, sizeof(int), - STARPU_RW, RTBLKADDR(A1, MORSE_Complex64_t, A1m, A1n), - STARPU_VALUE, &lda1, sizeof(int), - STARPU_RW, RTBLKADDR(A2, MORSE_Complex64_t, A2m, A2n), - STARPU_VALUE, &lda2, sizeof(int), - STARPU_W, RTBLKADDR(T, MORSE_Complex64_t, Tm, Tn), - STARPU_VALUE, &ldt, sizeof(int), - /* max( nb * (ib+1), ib * (ib+nb) ) */ - STARPU_SCRATCH, options->ws_worker, - /* /\* 2 * ib * (nb+ib) + nb *\/ */ - STARPU_VALUE, &h_work, sizeof(MORSE_starpu_ws_t *), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_RW(A1, A1m, A1n); + MORSE_ACCESS_RW(A2, A2m, A2n); + MORSE_ACCESS_W(T, Tm, Tn); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &m, sizeof(int), + STARPU_VALUE, &n, sizeof(int), + STARPU_VALUE, &ib, sizeof(int), + STARPU_RW, RTBLKADDR(A1, MORSE_Complex64_t, A1m, A1n), + STARPU_VALUE, &lda1, sizeof(int), + STARPU_RW, RTBLKADDR(A2, MORSE_Complex64_t, A2m, A2n), + STARPU_VALUE, &lda2, sizeof(int), + STARPU_W, RTBLKADDR(T, MORSE_Complex64_t, Tm, Tn), + STARPU_VALUE, &ldt, sizeof(int), + /* max( nb * (ib+1), ib * (ib+nb) ) */ + STARPU_SCRATCH, options->ws_worker, + /* /\* 2 * ib * (nb+ib) + nb *\/ */ + STARPU_VALUE, &h_work, sizeof(MORSE_starpu_ws_t *), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "ztslqt", + STARPU_NAME, "ztslqt", #endif - 0); - } + 0); } diff --git a/runtime/starpu/codelets/codelet_ztsmlq.c b/runtime/starpu/codelets/codelet_ztsmlq.c index 62fa28f92..390129540 100644 --- a/runtime/starpu/codelets/codelet_ztsmlq.c +++ b/runtime/starpu/codelets/codelet_ztsmlq.c @@ -145,39 +145,40 @@ void MORSE_TASK_ztsmlq(const MORSE_option_t *options, void (*callback)(void*) = options->profiling ? cl_ztsmlq_callback : NULL; int ldwork = side == MorseLeft ? ib : nb; - if ( morse_desc_islocal( A1, A1m, A1n ) || - morse_desc_islocal( A2, A2m, A2n ) || - morse_desc_islocal( V, Vm, Vn ) || - morse_desc_islocal( T, Tm, Tn ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &side, sizeof(MORSE_enum), - STARPU_VALUE, &trans, sizeof(MORSE_enum), - STARPU_VALUE, &m1, sizeof(int), - STARPU_VALUE, &n1, sizeof(int), - STARPU_VALUE, &m2, sizeof(int), - STARPU_VALUE, &n2, sizeof(int), - STARPU_VALUE, &k, sizeof(int), - STARPU_VALUE, &ib, sizeof(int), - STARPU_RW, RTBLKADDR(A1, MORSE_Complex64_t, A1m, A1n), - STARPU_VALUE, &lda1, sizeof(int), - STARPU_RW, RTBLKADDR(A2, MORSE_Complex64_t, A2m, A2n), - STARPU_VALUE, &lda2, sizeof(int), - STARPU_R, RTBLKADDR(V, MORSE_Complex64_t, Vm, Vn), - STARPU_VALUE, &ldv, sizeof(int), - STARPU_R, RTBLKADDR(T, MORSE_Complex64_t, Tm, Tn), - STARPU_VALUE, &ldt, sizeof(int), - /* max( ib*nb, 2*ib*nb ) */ - STARPU_SCRATCH, options->ws_worker, - STARPU_VALUE, &ldwork, sizeof(int), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_RW(A1, A1m, A1n); + MORSE_ACCESS_RW(A2, A2m, A2n); + MORSE_ACCESS_R(V, Vm, Vn); + MORSE_ACCESS_R(T, Tm, Tn); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &side, sizeof(MORSE_enum), + STARPU_VALUE, &trans, sizeof(MORSE_enum), + STARPU_VALUE, &m1, sizeof(int), + STARPU_VALUE, &n1, sizeof(int), + STARPU_VALUE, &m2, sizeof(int), + STARPU_VALUE, &n2, sizeof(int), + STARPU_VALUE, &k, sizeof(int), + STARPU_VALUE, &ib, sizeof(int), + STARPU_RW, RTBLKADDR(A1, MORSE_Complex64_t, A1m, A1n), + STARPU_VALUE, &lda1, sizeof(int), + STARPU_RW, RTBLKADDR(A2, MORSE_Complex64_t, A2m, A2n), + STARPU_VALUE, &lda2, sizeof(int), + STARPU_R, RTBLKADDR(V, MORSE_Complex64_t, Vm, Vn), + STARPU_VALUE, &ldv, sizeof(int), + STARPU_R, RTBLKADDR(T, MORSE_Complex64_t, Tm, Tn), + STARPU_VALUE, &ldt, sizeof(int), + /* max( ib*nb, 2*ib*nb ) */ + STARPU_SCRATCH, options->ws_worker, + STARPU_VALUE, &ldwork, sizeof(int), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "ztsmlq", + STARPU_NAME, "ztsmlq", #endif - 0); - } + 0); } diff --git a/runtime/starpu/codelets/codelet_ztsmlq_hetra1.c b/runtime/starpu/codelets/codelet_ztsmlq_hetra1.c index 0c1d36255..6a2a43768 100644 --- a/runtime/starpu/codelets/codelet_ztsmlq_hetra1.c +++ b/runtime/starpu/codelets/codelet_ztsmlq_hetra1.c @@ -46,39 +46,40 @@ void MORSE_TASK_ztsmlq_hetra1(const MORSE_option_t *options, int ldwork = side == MorseLeft ? ib : nb; - /* T follows distribution of V */ - if ( morse_desc_islocal( A1, A1m, A1n ) || - morse_desc_islocal( A2, A2m, A2n ) || - morse_desc_islocal( V, Vm, Vn ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &side, sizeof(MORSE_enum), - STARPU_VALUE, &trans, sizeof(MORSE_enum), - STARPU_VALUE, &m1, sizeof(int), - STARPU_VALUE, &n1, sizeof(int), - STARPU_VALUE, &m2, sizeof(int), - STARPU_VALUE, &n2, sizeof(int), - STARPU_VALUE, &k, sizeof(int), - STARPU_VALUE, &ib, sizeof(int), - STARPU_VALUE, &nb, sizeof(int), - STARPU_RW, RTBLKADDR(A1, MORSE_Complex64_t, A1m, A1n), - STARPU_VALUE, &lda1, sizeof(int), - STARPU_RW, RTBLKADDR(A2, MORSE_Complex64_t, A2m, A2n), - STARPU_VALUE, &lda2, sizeof(int), - STARPU_R, RTBLKADDR(V, MORSE_Complex64_t, Vm, Vn), - STARPU_VALUE, &ldv, sizeof(int), - STARPU_R, RTBLKADDR(T, MORSE_Complex64_t, Tm, Tn), - STARPU_VALUE, &ldt, sizeof(int), - STARPU_SCRATCH, options->ws_worker, - STARPU_VALUE, &ldwork, sizeof(int), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_RW(A1, A1m, A1n); + MORSE_ACCESS_RW(A2, A2m, A2n); + MORSE_ACCESS_R(V, Vm, Vn); + MORSE_ACCESS_R(T, Tm, Tn); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &side, sizeof(MORSE_enum), + STARPU_VALUE, &trans, sizeof(MORSE_enum), + STARPU_VALUE, &m1, sizeof(int), + STARPU_VALUE, &n1, sizeof(int), + STARPU_VALUE, &m2, sizeof(int), + STARPU_VALUE, &n2, sizeof(int), + STARPU_VALUE, &k, sizeof(int), + STARPU_VALUE, &ib, sizeof(int), + STARPU_VALUE, &nb, sizeof(int), + STARPU_RW, RTBLKADDR(A1, MORSE_Complex64_t, A1m, A1n), + STARPU_VALUE, &lda1, sizeof(int), + STARPU_RW, RTBLKADDR(A2, MORSE_Complex64_t, A2m, A2n), + STARPU_VALUE, &lda2, sizeof(int), + STARPU_R, RTBLKADDR(V, MORSE_Complex64_t, Vm, Vn), + STARPU_VALUE, &ldv, sizeof(int), + STARPU_R, RTBLKADDR(T, MORSE_Complex64_t, Tm, Tn), + STARPU_VALUE, &ldt, sizeof(int), + STARPU_SCRATCH, options->ws_worker, + STARPU_VALUE, &ldwork, sizeof(int), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "ztsmlq_hetra1", + STARPU_NAME, "ztsmlq_hetra1", #endif - 0); - } + 0); } #if !defined(CHAMELEON_SIMULATION) diff --git a/runtime/starpu/codelets/codelet_ztsmqr.c b/runtime/starpu/codelets/codelet_ztsmqr.c index 7183c7f6f..3f26f7c58 100644 --- a/runtime/starpu/codelets/codelet_ztsmqr.c +++ b/runtime/starpu/codelets/codelet_ztsmqr.c @@ -170,43 +170,45 @@ void MORSE_TASK_ztsmqr(const MORSE_option_t *options, rank_changed = 1; } - if ( morse_desc_islocal( A1, A1m, A1n ) || - morse_desc_islocal( A2, A2m, A2n ) || - morse_desc_islocal( V, Vm, Vn ) || - morse_desc_islocal( T, Tm, Tn ) || - rank_changed ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &side, sizeof(MORSE_enum), - STARPU_VALUE, &trans, sizeof(MORSE_enum), - STARPU_VALUE, &m1, sizeof(int), - STARPU_VALUE, &n1, sizeof(int), - STARPU_VALUE, &m2, sizeof(int), - STARPU_VALUE, &n2, sizeof(int), - STARPU_VALUE, &k, sizeof(int), - STARPU_VALUE, &ib, sizeof(int), - STARPU_RW, RTBLKADDR(A1, MORSE_Complex64_t, A1m, A1n), - STARPU_VALUE, &lda1, sizeof(int), - STARPU_RW, RTBLKADDR(A2, MORSE_Complex64_t, A2m, A2n), - STARPU_VALUE, &lda2, sizeof(int), - STARPU_R, RTBLKADDR(V, MORSE_Complex64_t, Vm, Vn), - STARPU_VALUE, &ldv, sizeof(int), - STARPU_R, RTBLKADDR(T, MORSE_Complex64_t, Tm, Tn), - STARPU_VALUE, &ldt, sizeof(int), - /* max( ib*nb, 2*ib*nb ) */ - STARPU_SCRATCH, options->ws_worker, - STARPU_VALUE, &ldwork, sizeof(int), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_RW(A1, A1m, A1n); + MORSE_ACCESS_RW(A2, A2m, A2n); + MORSE_ACCESS_R(V, Vm, Vn); + MORSE_ACCESS_R(T, Tm, Tn); + if (rank_changed) + MORSE_RANK_CHANGED; + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &side, sizeof(MORSE_enum), + STARPU_VALUE, &trans, sizeof(MORSE_enum), + STARPU_VALUE, &m1, sizeof(int), + STARPU_VALUE, &n1, sizeof(int), + STARPU_VALUE, &m2, sizeof(int), + STARPU_VALUE, &n2, sizeof(int), + STARPU_VALUE, &k, sizeof(int), + STARPU_VALUE, &ib, sizeof(int), + STARPU_RW, RTBLKADDR(A1, MORSE_Complex64_t, A1m, A1n), + STARPU_VALUE, &lda1, sizeof(int), + STARPU_RW, RTBLKADDR(A2, MORSE_Complex64_t, A2m, A2n), + STARPU_VALUE, &lda2, sizeof(int), + STARPU_R, RTBLKADDR(V, MORSE_Complex64_t, Vm, Vn), + STARPU_VALUE, &ldv, sizeof(int), + STARPU_R, RTBLKADDR(T, MORSE_Complex64_t, Tm, Tn), + STARPU_VALUE, &ldt, sizeof(int), + /* max( ib*nb, 2*ib*nb ) */ + STARPU_SCRATCH, options->ws_worker, + STARPU_VALUE, &ldwork, sizeof(int), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "ztsmqr", + STARPU_NAME, "ztsmqr", #endif #if defined(CHAMELEON_USE_MPI) - STARPU_EXECUTE_ON_NODE, execution_rank, + STARPU_EXECUTE_ON_NODE, execution_rank, #endif - 0); - } + 0); } diff --git a/runtime/starpu/codelets/codelet_ztsmqr_hetra1.c b/runtime/starpu/codelets/codelet_ztsmqr_hetra1.c index 16edc18b4..792d9e059 100644 --- a/runtime/starpu/codelets/codelet_ztsmqr_hetra1.c +++ b/runtime/starpu/codelets/codelet_ztsmqr_hetra1.c @@ -46,38 +46,39 @@ void MORSE_TASK_ztsmqr_hetra1(const MORSE_option_t *options, int ldwork = side == MorseLeft ? ib : nb; - /* T follows distribution of V */ - if ( morse_desc_islocal( A1, A1m, A1n ) || - morse_desc_islocal( A2, A2m, A2n ) || - morse_desc_islocal( V, Vm, Vn ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &side, sizeof(MORSE_enum), - STARPU_VALUE, &trans, sizeof(MORSE_enum), - STARPU_VALUE, &m1, sizeof(int), - STARPU_VALUE, &n1, sizeof(int), - STARPU_VALUE, &m2, sizeof(int), - STARPU_VALUE, &n2, sizeof(int), - STARPU_VALUE, &k, sizeof(int), - STARPU_VALUE, &ib, sizeof(int), - STARPU_RW, RTBLKADDR(A1, MORSE_Complex64_t, A1m, A1n), - STARPU_VALUE, &lda1, sizeof(int), - STARPU_RW, RTBLKADDR(A2, MORSE_Complex64_t, A2m, A2n), - STARPU_VALUE, &lda2, sizeof(int), - STARPU_R, RTBLKADDR(V, MORSE_Complex64_t, Vm, Vn), - STARPU_VALUE, &ldv, sizeof(int), - STARPU_R, RTBLKADDR(T, MORSE_Complex64_t, Tm, Tn), - STARPU_VALUE, &ldt, sizeof(int), - STARPU_SCRATCH, options->ws_worker, - STARPU_VALUE, &ldwork, sizeof(int), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_RW(A1, A1m, A1n); + MORSE_ACCESS_RW(A2, A2m, A2n); + MORSE_ACCESS_R(V, Vm, Vn); + MORSE_ACCESS_R(T, Tm, Tn); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &side, sizeof(MORSE_enum), + STARPU_VALUE, &trans, sizeof(MORSE_enum), + STARPU_VALUE, &m1, sizeof(int), + STARPU_VALUE, &n1, sizeof(int), + STARPU_VALUE, &m2, sizeof(int), + STARPU_VALUE, &n2, sizeof(int), + STARPU_VALUE, &k, sizeof(int), + STARPU_VALUE, &ib, sizeof(int), + STARPU_RW, RTBLKADDR(A1, MORSE_Complex64_t, A1m, A1n), + STARPU_VALUE, &lda1, sizeof(int), + STARPU_RW, RTBLKADDR(A2, MORSE_Complex64_t, A2m, A2n), + STARPU_VALUE, &lda2, sizeof(int), + STARPU_R, RTBLKADDR(V, MORSE_Complex64_t, Vm, Vn), + STARPU_VALUE, &ldv, sizeof(int), + STARPU_R, RTBLKADDR(T, MORSE_Complex64_t, Tm, Tn), + STARPU_VALUE, &ldt, sizeof(int), + STARPU_SCRATCH, options->ws_worker, + STARPU_VALUE, &ldwork, sizeof(int), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "ztsmqr_hetra1", + STARPU_NAME, "ztsmqr_hetra1", #endif - 0); - } + 0); } #if !defined(CHAMELEON_SIMULATION) diff --git a/runtime/starpu/codelets/codelet_ztsqrt.c b/runtime/starpu/codelets/codelet_ztsqrt.c index 7081a754a..c16ca6773 100644 --- a/runtime/starpu/codelets/codelet_ztsqrt.c +++ b/runtime/starpu/codelets/codelet_ztsqrt.c @@ -108,33 +108,34 @@ void MORSE_TASK_ztsqrt(const MORSE_option_t *options, void (*callback)(void*) = options->profiling ? cl_ztsqrt_callback : NULL; MORSE_starpu_ws_t *h_work = (MORSE_starpu_ws_t*)(options->ws_host); - if ( morse_desc_islocal( A1, A1m, A1n ) || - morse_desc_islocal( A2, A2m, A2n ) || - morse_desc_islocal( T, Tm, Tn ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &m, sizeof(int), - STARPU_VALUE, &n, sizeof(int), - STARPU_VALUE, &ib, sizeof(int), - STARPU_RW, RTBLKADDR(A1, MORSE_Complex64_t, A1m, A1n), - STARPU_VALUE, &lda1, sizeof(int), - STARPU_RW, RTBLKADDR(A2, MORSE_Complex64_t, A2m, A2n), - STARPU_VALUE, &lda2, sizeof(int), - STARPU_W, RTBLKADDR(T, MORSE_Complex64_t, Tm, Tn ), - STARPU_VALUE, &ldt, sizeof(int), - /* max( nb * (ib+1), ib * (ib+nb) ) */ - STARPU_SCRATCH, options->ws_worker, - /* 2 * ib * (nb+ib) + nb */ - STARPU_VALUE, &h_work, sizeof(MORSE_starpu_ws_t *), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_RW(A1, A1m, A1n); + MORSE_ACCESS_RW(A2, A2m, A2n); + MORSE_ACCESS_W(T, Tm, Tn); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &m, sizeof(int), + STARPU_VALUE, &n, sizeof(int), + STARPU_VALUE, &ib, sizeof(int), + STARPU_RW, RTBLKADDR(A1, MORSE_Complex64_t, A1m, A1n), + STARPU_VALUE, &lda1, sizeof(int), + STARPU_RW, RTBLKADDR(A2, MORSE_Complex64_t, A2m, A2n), + STARPU_VALUE, &lda2, sizeof(int), + STARPU_W, RTBLKADDR(T, MORSE_Complex64_t, Tm, Tn ), + STARPU_VALUE, &ldt, sizeof(int), + /* max( nb * (ib+1), ib * (ib+nb) ) */ + STARPU_SCRATCH, options->ws_worker, + /* 2 * ib * (nb+ib) + nb */ + STARPU_VALUE, &h_work, sizeof(MORSE_starpu_ws_t *), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "ztsqrt", + STARPU_NAME, "ztsqrt", #endif - STARPU_EXECUTE_ON_NODE, A2->get_rankof(A2, A2m, A2n), - 0); - } + STARPU_EXECUTE_ON_NODE, A2->get_rankof(A2, A2m, A2n), + 0); } diff --git a/runtime/starpu/codelets/codelet_ztstrf.c b/runtime/starpu/codelets/codelet_ztstrf.c index 0628740d9..eae5108ee 100644 --- a/runtime/starpu/codelets/codelet_ztstrf.c +++ b/runtime/starpu/codelets/codelet_ztstrf.c @@ -113,35 +113,36 @@ void MORSE_TASK_ztstrf(const MORSE_option_t *options, void (*callback)(void*) = options->profiling ? cl_ztstrf_callback : NULL; MORSE_starpu_ws_t *d_work = (MORSE_starpu_ws_t*)(options->ws_host); - if ( morse_desc_islocal( U, Um, Un ) || - morse_desc_islocal( A, Am, An ) || - morse_desc_islocal( L, Lm, Ln ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &m, sizeof(int), - STARPU_VALUE, &n, sizeof(int), - STARPU_VALUE, &ib, sizeof(int), - STARPU_VALUE, &nb, sizeof(int), - STARPU_RW, RTBLKADDR(U, MORSE_Complex64_t, Um, Un), - STARPU_VALUE, &ldu, sizeof(int), - STARPU_RW, RTBLKADDR(A, MORSE_Complex64_t, Am, An), - STARPU_VALUE, &lda, sizeof(int), - STARPU_W, RTBLKADDR(L, MORSE_Complex64_t, Lm, Ln), - STARPU_VALUE, &ldl, sizeof(int), - STARPU_VALUE, &IPIV, sizeof(int*), - STARPU_SCRATCH, options->ws_worker, - STARPU_VALUE, &d_work, sizeof(MORSE_starpu_ws_t *), - STARPU_VALUE, &nb, sizeof(int), - STARPU_VALUE, &check_info, sizeof(MORSE_bool), - STARPU_VALUE, &iinfo, sizeof(int), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_RW(U, Um, Un); + MORSE_ACCESS_RW(A, Am, An); + MORSE_ACCESS_W(L, Lm, Ln); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &m, sizeof(int), + STARPU_VALUE, &n, sizeof(int), + STARPU_VALUE, &ib, sizeof(int), + STARPU_VALUE, &nb, sizeof(int), + STARPU_RW, RTBLKADDR(U, MORSE_Complex64_t, Um, Un), + STARPU_VALUE, &ldu, sizeof(int), + STARPU_RW, RTBLKADDR(A, MORSE_Complex64_t, Am, An), + STARPU_VALUE, &lda, sizeof(int), + STARPU_W, RTBLKADDR(L, MORSE_Complex64_t, Lm, Ln), + STARPU_VALUE, &ldl, sizeof(int), + STARPU_VALUE, &IPIV, sizeof(int*), + STARPU_SCRATCH, options->ws_worker, + STARPU_VALUE, &d_work, sizeof(MORSE_starpu_ws_t *), + STARPU_VALUE, &nb, sizeof(int), + STARPU_VALUE, &check_info, sizeof(MORSE_bool), + STARPU_VALUE, &iinfo, sizeof(int), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "ztstrf", + STARPU_NAME, "ztstrf", #endif - 0); - } + 0); } diff --git a/runtime/starpu/codelets/codelet_zttlqt.c b/runtime/starpu/codelets/codelet_zttlqt.c index 269cec7a9..f89913e69 100644 --- a/runtime/starpu/codelets/codelet_zttlqt.c +++ b/runtime/starpu/codelets/codelet_zttlqt.c @@ -117,30 +117,31 @@ void MORSE_TASK_zttlqt(const MORSE_option_t *options, struct starpu_codelet *codelet = &cl_zttlqt; void (*callback)(void*) = options->profiling ? cl_zttlqt_callback : NULL; - if ( morse_desc_islocal( A1, A1m, A1n ) || - morse_desc_islocal( A2, A2m, A2n ) || - morse_desc_islocal( T, Tm, Tn ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &m, sizeof(int), - STARPU_VALUE, &n, sizeof(int), - STARPU_VALUE, &ib, sizeof(int), - STARPU_RW, RTBLKADDR(A1, MORSE_Complex64_t, A1m, A1n), - STARPU_VALUE, &lda1, sizeof(int), - STARPU_RW, RTBLKADDR(A2, MORSE_Complex64_t, A2m, A2n), - STARPU_VALUE, &lda2, sizeof(int), - STARPU_W, RTBLKADDR(T, MORSE_Complex64_t, Tm, Tn), - STARPU_VALUE, &ldt, sizeof(int), - /* nb * (ib+1) */ - STARPU_SCRATCH, options->ws_worker, - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_RW(A1, A1m, A1n); + MORSE_ACCESS_RW(A2, A2m, A2n); + MORSE_ACCESS_W(T, Tm, Tn); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &m, sizeof(int), + STARPU_VALUE, &n, sizeof(int), + STARPU_VALUE, &ib, sizeof(int), + STARPU_RW, RTBLKADDR(A1, MORSE_Complex64_t, A1m, A1n), + STARPU_VALUE, &lda1, sizeof(int), + STARPU_RW, RTBLKADDR(A2, MORSE_Complex64_t, A2m, A2n), + STARPU_VALUE, &lda2, sizeof(int), + STARPU_W, RTBLKADDR(T, MORSE_Complex64_t, Tm, Tn), + STARPU_VALUE, &ldt, sizeof(int), + /* nb * (ib+1) */ + STARPU_SCRATCH, options->ws_worker, + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "zttlqt", + STARPU_NAME, "zttlqt", #endif - 0); - } + 0); } diff --git a/runtime/starpu/codelets/codelet_zttmlq.c b/runtime/starpu/codelets/codelet_zttmlq.c index ca03af3c7..2a75969c1 100644 --- a/runtime/starpu/codelets/codelet_zttmlq.c +++ b/runtime/starpu/codelets/codelet_zttmlq.c @@ -138,39 +138,40 @@ void MORSE_TASK_zttmlq(const MORSE_option_t *options, void (*callback)(void*) = options->profiling ? cl_zttmlq_callback : NULL; int ldwork = side == MorseLeft ? ib : nb; - if ( morse_desc_islocal( A1, A1m, A1n ) || - morse_desc_islocal( A2, A2m, A2n ) || - morse_desc_islocal( V, Vm, Vn ) || - morse_desc_islocal( T, Tm, Tn ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &side, sizeof(MORSE_enum), - STARPU_VALUE, &trans, sizeof(MORSE_enum), - STARPU_VALUE, &m1, sizeof(int), - STARPU_VALUE, &n1, sizeof(int), - STARPU_VALUE, &m2, sizeof(int), - STARPU_VALUE, &n2, sizeof(int), - STARPU_VALUE, &k, sizeof(int), - STARPU_VALUE, &ib, sizeof(int), - STARPU_RW, RTBLKADDR(A1, MORSE_Complex64_t, A1m, A1n), - STARPU_VALUE, &lda1, sizeof(int), - STARPU_RW, RTBLKADDR(A2, MORSE_Complex64_t, A2m, A2n), - STARPU_VALUE, &lda2, sizeof(int), - STARPU_R, RTBLKADDR(V, MORSE_Complex64_t, Vm, Vn), - STARPU_VALUE, &ldv, sizeof(int), - STARPU_R, RTBLKADDR(T, MORSE_Complex64_t, Tm, Tn), - STARPU_VALUE, &ldt, sizeof(int), - /* nb * ib */ - STARPU_SCRATCH, options->ws_worker, - STARPU_VALUE, &ldwork, sizeof(int), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_RW(A1, A1m, A1n); + MORSE_ACCESS_RW(A2, A2m, A2n); + MORSE_ACCESS_R(V, Vm, Vn); + MORSE_ACCESS_R(T, Tm, Tn); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &side, sizeof(MORSE_enum), + STARPU_VALUE, &trans, sizeof(MORSE_enum), + STARPU_VALUE, &m1, sizeof(int), + STARPU_VALUE, &n1, sizeof(int), + STARPU_VALUE, &m2, sizeof(int), + STARPU_VALUE, &n2, sizeof(int), + STARPU_VALUE, &k, sizeof(int), + STARPU_VALUE, &ib, sizeof(int), + STARPU_RW, RTBLKADDR(A1, MORSE_Complex64_t, A1m, A1n), + STARPU_VALUE, &lda1, sizeof(int), + STARPU_RW, RTBLKADDR(A2, MORSE_Complex64_t, A2m, A2n), + STARPU_VALUE, &lda2, sizeof(int), + STARPU_R, RTBLKADDR(V, MORSE_Complex64_t, Vm, Vn), + STARPU_VALUE, &ldv, sizeof(int), + STARPU_R, RTBLKADDR(T, MORSE_Complex64_t, Tm, Tn), + STARPU_VALUE, &ldt, sizeof(int), + /* nb * ib */ + STARPU_SCRATCH, options->ws_worker, + STARPU_VALUE, &ldwork, sizeof(int), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "zttmlq", + STARPU_NAME, "zttmlq", #endif - 0); - } + 0); } diff --git a/runtime/starpu/codelets/codelet_zttmqr.c b/runtime/starpu/codelets/codelet_zttmqr.c index e31b55860..f16d3f0b0 100644 --- a/runtime/starpu/codelets/codelet_zttmqr.c +++ b/runtime/starpu/codelets/codelet_zttmqr.c @@ -163,43 +163,45 @@ void MORSE_TASK_zttmqr(const MORSE_option_t *options, rank_changed = 1; } - if ( morse_desc_islocal( A1, A1m, A1n ) || - morse_desc_islocal( A2, A2m, A2n ) || - morse_desc_islocal( V, Vm, Vn ) || - morse_desc_islocal( T, Tm, Tn ) || - rank_changed ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &side, sizeof(MORSE_enum), - STARPU_VALUE, &trans, sizeof(MORSE_enum), - STARPU_VALUE, &m1, sizeof(int), - STARPU_VALUE, &n1, sizeof(int), - STARPU_VALUE, &m2, sizeof(int), - STARPU_VALUE, &n2, sizeof(int), - STARPU_VALUE, &k, sizeof(int), - STARPU_VALUE, &ib, sizeof(int), - STARPU_RW, RTBLKADDR(A1, MORSE_Complex64_t, A1m, A1n), - STARPU_VALUE, &lda1, sizeof(int), - STARPU_RW, RTBLKADDR(A2, MORSE_Complex64_t, A2m, A2n), - STARPU_VALUE, &lda2, sizeof(int), - STARPU_R, RTBLKADDR(V, MORSE_Complex64_t, Vm, Vn), - STARPU_VALUE, &ldv, sizeof(int), - STARPU_R, RTBLKADDR(T, MORSE_Complex64_t, Tm, Tn), - STARPU_VALUE, &ldt, sizeof(int), - /* nb * ib */ - STARPU_SCRATCH, options->ws_worker, - STARPU_VALUE, &ldwork, sizeof(int), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_RW(A1, A1m, A1n); + MORSE_ACCESS_RW(A2, A2m, A2n); + MORSE_ACCESS_R(V, Vm, Vn); + MORSE_ACCESS_R(T, Tm, Tn); + if (rank_changed) + MORSE_RANK_CHANGED; + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &side, sizeof(MORSE_enum), + STARPU_VALUE, &trans, sizeof(MORSE_enum), + STARPU_VALUE, &m1, sizeof(int), + STARPU_VALUE, &n1, sizeof(int), + STARPU_VALUE, &m2, sizeof(int), + STARPU_VALUE, &n2, sizeof(int), + STARPU_VALUE, &k, sizeof(int), + STARPU_VALUE, &ib, sizeof(int), + STARPU_RW, RTBLKADDR(A1, MORSE_Complex64_t, A1m, A1n), + STARPU_VALUE, &lda1, sizeof(int), + STARPU_RW, RTBLKADDR(A2, MORSE_Complex64_t, A2m, A2n), + STARPU_VALUE, &lda2, sizeof(int), + STARPU_R, RTBLKADDR(V, MORSE_Complex64_t, Vm, Vn), + STARPU_VALUE, &ldv, sizeof(int), + STARPU_R, RTBLKADDR(T, MORSE_Complex64_t, Tm, Tn), + STARPU_VALUE, &ldt, sizeof(int), + /* nb * ib */ + STARPU_SCRATCH, options->ws_worker, + STARPU_VALUE, &ldwork, sizeof(int), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_USE_MPI) - STARPU_EXECUTE_ON_NODE, execution_rank, + STARPU_EXECUTE_ON_NODE, execution_rank, #endif #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "zttmqr", + STARPU_NAME, "zttmqr", #endif - 0); - } + 0); } diff --git a/runtime/starpu/codelets/codelet_zttqrt.c b/runtime/starpu/codelets/codelet_zttqrt.c index b368a3202..02bc82458 100644 --- a/runtime/starpu/codelets/codelet_zttqrt.c +++ b/runtime/starpu/codelets/codelet_zttqrt.c @@ -117,30 +117,31 @@ void MORSE_TASK_zttqrt(const MORSE_option_t *options, struct starpu_codelet *codelet = &cl_zttqrt; void (*callback)(void*) = options->profiling ? cl_zttqrt_callback : NULL; - if ( morse_desc_islocal( A1, A1m, A1n ) || - morse_desc_islocal( A2, A2m, A2n ) || - morse_desc_islocal( T, Tm, Tn ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &m, sizeof(int), - STARPU_VALUE, &n, sizeof(int), - STARPU_VALUE, &ib, sizeof(int), - STARPU_RW, RTBLKADDR(A1, MORSE_Complex64_t, A1m, A1n), - STARPU_VALUE, &lda1, sizeof(int), - STARPU_RW, RTBLKADDR(A2, MORSE_Complex64_t, A2m, A2n), - STARPU_VALUE, &lda2, sizeof(int), - STARPU_W, RTBLKADDR(T, MORSE_Complex64_t, Tm, Tn), - STARPU_VALUE, &ldt, sizeof(int), - /* nb * (ib+1) */ - STARPU_SCRATCH, options->ws_worker, - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_RW(A1, A1m, A1n); + MORSE_ACCESS_RW(A2, A2m, A2n); + MORSE_ACCESS_W(T, Tm, Tn); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &m, sizeof(int), + STARPU_VALUE, &n, sizeof(int), + STARPU_VALUE, &ib, sizeof(int), + STARPU_RW, RTBLKADDR(A1, MORSE_Complex64_t, A1m, A1n), + STARPU_VALUE, &lda1, sizeof(int), + STARPU_RW, RTBLKADDR(A2, MORSE_Complex64_t, A2m, A2n), + STARPU_VALUE, &lda2, sizeof(int), + STARPU_W, RTBLKADDR(T, MORSE_Complex64_t, Tm, Tn), + STARPU_VALUE, &ldt, sizeof(int), + /* nb * (ib+1) */ + STARPU_SCRATCH, options->ws_worker, + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "zttqrt", + STARPU_NAME, "zttqrt", #endif - 0); - } + 0); } diff --git a/runtime/starpu/codelets/codelet_zunmlq.c b/runtime/starpu/codelets/codelet_zunmlq.c index 956d92643..6525661f6 100644 --- a/runtime/starpu/codelets/codelet_zunmlq.c +++ b/runtime/starpu/codelets/codelet_zunmlq.c @@ -127,34 +127,35 @@ void MORSE_TASK_zunmlq(const MORSE_option_t *options, struct starpu_codelet *codelet = &cl_zunmlq; void (*callback)(void*) = options->profiling ? cl_zunmlq_callback : NULL; - if ( morse_desc_islocal( A, Am, An ) || - morse_desc_islocal( T, Tm, Tn ) || - morse_desc_islocal( C, Cm, Cn ) ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &side, sizeof(MORSE_enum), - STARPU_VALUE, &trans, sizeof(MORSE_enum), - STARPU_VALUE, &m, sizeof(int), - STARPU_VALUE, &n, sizeof(int), - STARPU_VALUE, &k, sizeof(int), - STARPU_VALUE, &ib, sizeof(int), - STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), - STARPU_VALUE, &lda, sizeof(int), - STARPU_R, RTBLKADDR(T, MORSE_Complex64_t, Tm, Tn), - STARPU_VALUE, &ldt, sizeof(int), - STARPU_RW, RTBLKADDR(C, MORSE_Complex64_t, Cm, Cn), - STARPU_VALUE, &ldc, sizeof(int), - /* ib * nb */ - STARPU_SCRATCH, options->ws_worker, - STARPU_VALUE, &nb, sizeof(int), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_R(A, Am, An); + MORSE_ACCESS_R(T, Tm, Tn); + MORSE_ACCESS_RW(C, Cm, Cn); + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &side, sizeof(MORSE_enum), + STARPU_VALUE, &trans, sizeof(MORSE_enum), + STARPU_VALUE, &m, sizeof(int), + STARPU_VALUE, &n, sizeof(int), + STARPU_VALUE, &k, sizeof(int), + STARPU_VALUE, &ib, sizeof(int), + STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), + STARPU_VALUE, &lda, sizeof(int), + STARPU_R, RTBLKADDR(T, MORSE_Complex64_t, Tm, Tn), + STARPU_VALUE, &ldt, sizeof(int), + STARPU_RW, RTBLKADDR(C, MORSE_Complex64_t, Cm, Cn), + STARPU_VALUE, &ldc, sizeof(int), + /* ib * nb */ + STARPU_SCRATCH, options->ws_worker, + STARPU_VALUE, &nb, sizeof(int), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "zunmlq", + STARPU_NAME, "zunmlq", #endif - 0); - } + 0); } diff --git a/runtime/starpu/codelets/codelet_zunmqr.c b/runtime/starpu/codelets/codelet_zunmqr.c index fcbf06a7e..3c981f4bb 100644 --- a/runtime/starpu/codelets/codelet_zunmqr.c +++ b/runtime/starpu/codelets/codelet_zunmqr.c @@ -148,38 +148,40 @@ void MORSE_TASK_zunmqr(const MORSE_option_t *options, rank_changed = 1; } - if ( morse_desc_islocal( A, Am, An ) || - morse_desc_islocal( T, Tm, Tn ) || - morse_desc_islocal( C, Cm, Cn ) || - rank_changed ) - { - starpu_insert_task( - starpu_mpi_codelet(codelet), - STARPU_VALUE, &side, sizeof(MORSE_enum), - STARPU_VALUE, &trans, sizeof(MORSE_enum), - STARPU_VALUE, &m, sizeof(int), - STARPU_VALUE, &n, sizeof(int), - STARPU_VALUE, &k, sizeof(int), - STARPU_VALUE, &ib, sizeof(int), - STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), - STARPU_VALUE, &lda, sizeof(int), - STARPU_R, RTBLKADDR(T, MORSE_Complex64_t, Tm, Tn), - STARPU_VALUE, &ldt, sizeof(int), - STARPU_RW, RTBLKADDR(C, MORSE_Complex64_t, Cm, Cn), - STARPU_VALUE, &ldc, sizeof(int), - /* ib * nb */ - STARPU_SCRATCH, options->ws_worker, - STARPU_VALUE, &nb, sizeof(int), - STARPU_PRIORITY, options->priority, - STARPU_CALLBACK, callback, + MORSE_BEGIN_ACCESS_DECLARATION; + MORSE_ACCESS_R(A, Am, An); + MORSE_ACCESS_R(T, Tm, Tn); + MORSE_ACCESS_RW(C, Cm, Cn); + if (rank_changed) + MORSE_RANK_CHANGED; + MORSE_END_ACCESS_DECLARATION; + + starpu_insert_task( + starpu_mpi_codelet(codelet), + STARPU_VALUE, &side, sizeof(MORSE_enum), + STARPU_VALUE, &trans, sizeof(MORSE_enum), + STARPU_VALUE, &m, sizeof(int), + STARPU_VALUE, &n, sizeof(int), + STARPU_VALUE, &k, sizeof(int), + STARPU_VALUE, &ib, sizeof(int), + STARPU_R, RTBLKADDR(A, MORSE_Complex64_t, Am, An), + STARPU_VALUE, &lda, sizeof(int), + STARPU_R, RTBLKADDR(T, MORSE_Complex64_t, Tm, Tn), + STARPU_VALUE, &ldt, sizeof(int), + STARPU_RW, RTBLKADDR(C, MORSE_Complex64_t, Cm, Cn), + STARPU_VALUE, &ldc, sizeof(int), + /* ib * nb */ + STARPU_SCRATCH, options->ws_worker, + STARPU_VALUE, &nb, sizeof(int), + STARPU_PRIORITY, options->priority, + STARPU_CALLBACK, callback, #if defined(CHAMELEON_USE_MPI) - STARPU_EXECUTE_ON_NODE, execution_rank, + STARPU_EXECUTE_ON_NODE, execution_rank, #endif #if defined(CHAMELEON_CODELETS_HAVE_NAME) - STARPU_NAME, "zunmqr", + STARPU_NAME, "zunmqr", #endif - 0); - } + 0); } -- GitLab