From 6e2d7fcaec0a53bbe78811ba965d52ab26e3c4f9 Mon Sep 17 00:00:00 2001
From: Mathieu Faverge <mathieu.faverge@inria.fr>
Date: Tue, 12 Dec 2017 10:27:56 +0100
Subject: [PATCH] Fix naming in codelets

---
 runtime/parsec/codelets/codelet_zasum.c       | 12 +++++------
 runtime/parsec/codelets/codelet_zaxpy.c       | 10 +++++-----
 runtime/parsec/codelets/codelet_zbuild.c      | 12 +++++------
 runtime/parsec/codelets/codelet_zgeadd.c      | 10 +++++-----
 runtime/parsec/codelets/codelet_zgelqt.c      | 10 +++++-----
 runtime/parsec/codelets/codelet_zgemm.c       | 18 ++++++++---------
 runtime/parsec/codelets/codelet_zgeqrt.c      | 10 +++++-----
 runtime/parsec/codelets/codelet_zgessm.c      | 10 +++++-----
 runtime/parsec/codelets/codelet_zgessq.c      | 10 +++++-----
 runtime/parsec/codelets/codelet_zgetrf.c      | 10 +++++-----
 .../parsec/codelets/codelet_zgetrf_incpiv.c   | 10 +++++-----
 .../parsec/codelets/codelet_zgetrf_nopiv.c    | 10 +++++-----
 runtime/parsec/codelets/codelet_zhe2ge.c      | 12 +++++------
 runtime/parsec/codelets/codelet_zhemm.c       | 10 +++++-----
 runtime/parsec/codelets/codelet_zher2k.c      | 16 +++++++--------
 runtime/parsec/codelets/codelet_zherfb.c      | 16 +++++++--------
 runtime/parsec/codelets/codelet_zherk.c       | 14 ++++++-------
 runtime/parsec/codelets/codelet_zhessq.c      | 10 +++++-----
 runtime/parsec/codelets/codelet_zlacpy.c      | 10 +++++-----
 runtime/parsec/codelets/codelet_zlag2c.c      | 18 ++++++++---------
 runtime/parsec/codelets/codelet_zlange.c      | 20 +++++++++----------
 runtime/parsec/codelets/codelet_zlanhe.c      | 10 +++++-----
 runtime/parsec/codelets/codelet_zlansy.c      | 10 +++++-----
 runtime/parsec/codelets/codelet_zlantr.c      | 10 +++++-----
 runtime/parsec/codelets/codelet_zlascal.c     | 12 +++++------
 runtime/parsec/codelets/codelet_zlaset.c      | 10 +++++-----
 runtime/parsec/codelets/codelet_zlaset2.c     | 10 +++++-----
 runtime/parsec/codelets/codelet_zlatro.c      | 12 +++++------
 runtime/parsec/codelets/codelet_zlauum.c      | 10 +++++-----
 runtime/parsec/codelets/codelet_zpamm.c       | 10 +++++-----
 runtime/parsec/codelets/codelet_zplghe.c      | 12 +++++------
 runtime/parsec/codelets/codelet_zplgsy.c      | 12 +++++------
 runtime/parsec/codelets/codelet_zplrnt.c      | 10 +++++-----
 runtime/parsec/codelets/codelet_zplssq.c      | 20 +++++++++----------
 runtime/parsec/codelets/codelet_zpotrf.c      | 12 +++++------
 runtime/parsec/codelets/codelet_zssssm.c      | 10 +++++-----
 runtime/parsec/codelets/codelet_zsymm.c       | 10 +++++-----
 runtime/parsec/codelets/codelet_zsyr2k.c      | 16 +++++++--------
 runtime/parsec/codelets/codelet_zsyrk.c       | 14 ++++++-------
 runtime/parsec/codelets/codelet_zsyssq.c      | 10 +++++-----
 .../parsec/codelets/codelet_zsytrf_nopiv.c    | 10 +++++-----
 runtime/parsec/codelets/codelet_ztile_zero.c  | 10 +++++-----
 runtime/parsec/codelets/codelet_ztpmqrt.c     | 12 +++++------
 runtime/parsec/codelets/codelet_ztpqrt.c      | 14 ++++++-------
 runtime/parsec/codelets/codelet_ztradd.c      | 10 +++++-----
 runtime/parsec/codelets/codelet_ztrasm.c      | 10 +++++-----
 runtime/parsec/codelets/codelet_ztrmm.c       | 10 +++++-----
 runtime/parsec/codelets/codelet_ztrsm.c       | 14 ++++++-------
 runtime/parsec/codelets/codelet_ztrssq.c      | 10 +++++-----
 runtime/parsec/codelets/codelet_ztrtri.c      | 10 +++++-----
 runtime/parsec/codelets/codelet_ztslqt.c      | 10 +++++-----
 runtime/parsec/codelets/codelet_ztsmlq.c      | 10 +++++-----
 .../parsec/codelets/codelet_ztsmlq_hetra1.c   | 14 ++++++-------
 runtime/parsec/codelets/codelet_ztsmqr.c      | 10 +++++-----
 .../parsec/codelets/codelet_ztsmqr_hetra1.c   | 14 ++++++-------
 runtime/parsec/codelets/codelet_ztsqrt.c      | 12 +++++------
 runtime/parsec/codelets/codelet_ztstrf.c      | 10 +++++-----
 runtime/parsec/codelets/codelet_zttlqt.c      | 10 +++++-----
 runtime/parsec/codelets/codelet_zttmlq.c      | 10 +++++-----
 runtime/parsec/codelets/codelet_zttmqr.c      | 10 +++++-----
 runtime/parsec/codelets/codelet_zttqrt.c      | 10 +++++-----
 runtime/parsec/codelets/codelet_zunmlq.c      | 10 +++++-----
 runtime/parsec/codelets/codelet_zunmqr.c      | 12 +++++------
 63 files changed, 365 insertions(+), 365 deletions(-)

diff --git a/runtime/parsec/codelets/codelet_zasum.c b/runtime/parsec/codelets/codelet_zasum.c
index 61343c815..f0fd0c5b5 100644
--- a/runtime/parsec/codelets/codelet_zasum.c
+++ b/runtime/parsec/codelets/codelet_zasum.c
@@ -25,8 +25,8 @@
 #include "coreblas/coreblas_z.h"
 
 static int
-CORE_dzasum_parsec(dague_execution_unit_t    *context,
-                   dague_execution_context_t *this_task)
+CORE_dzasum_parsec(parsec_execution_stream_t    *context,
+                   parsec_task_t *this_task)
 {
     MORSE_enum *storev;
     MORSE_enum *uplo;
@@ -36,7 +36,7 @@ CORE_dzasum_parsec(dague_execution_unit_t    *context,
     int *lda;
     double *work;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE, &storev,
         UNPACK_VALUE, &uplo,
@@ -56,10 +56,10 @@ void MORSE_TASK_dzasum(const MORSE_option_t *options,
                        const MORSE_desc_t *A, int Am, int An, int lda,
                        const MORSE_desc_t *B, int Bm, int Bn)
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_dzasum_parsec, "zasum",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_dzasum_parsec, options->priority, "zasum",
         sizeof(MORSE_enum),    &storev,                           VALUE,
         sizeof(MORSE_enum),    &uplo,                             VALUE,
         sizeof(int),           &M,                                VALUE,
diff --git a/runtime/parsec/codelets/codelet_zaxpy.c b/runtime/parsec/codelets/codelet_zaxpy.c
index d43182e96..03b15b5ca 100644
--- a/runtime/parsec/codelets/codelet_zaxpy.c
+++ b/runtime/parsec/codelets/codelet_zaxpy.c
@@ -25,7 +25,7 @@
 #include "coreblas/coreblas_z.h"
 
 static int
-CORE_zaxpy_parsec(dague_execution_unit_t *context, dague_execution_context_t *this_task)
+CORE_zaxpy_parsec(parsec_execution_stream_t *context, parsec_task_t *this_task)
 {
     int *M;
     MORSE_Complex64_t *alpha;
@@ -34,7 +34,7 @@ CORE_zaxpy_parsec(dague_execution_unit_t *context, dague_execution_context_t *th
     MORSE_Complex64_t *B;
     int *incB;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE, &M,
         UNPACK_VALUE, &alpha,
@@ -53,10 +53,10 @@ void MORSE_TASK_zaxpy(const MORSE_option_t *options,
                       const MORSE_desc_t *A, int Am, int An, int incA,
                       const MORSE_desc_t *B, int Bm, int Bn, int incB)
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_zaxpy_parsec, "axpy",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_zaxpy_parsec, options->priority,  "axpy",
         sizeof(int),               &M,     VALUE,
         sizeof(MORSE_Complex64_t), &alpha, VALUE,
         PASSED_BY_REF,  RTBLKADDR( A, MORSE_Complex64_t, Am, An ), INPUT | REGION_FULL,
diff --git a/runtime/parsec/codelets/codelet_zbuild.c b/runtime/parsec/codelets/codelet_zbuild.c
index f3bcd6472..4c7398566 100644
--- a/runtime/parsec/codelets/codelet_zbuild.c
+++ b/runtime/parsec/codelets/codelet_zbuild.c
@@ -27,8 +27,8 @@
 #include "coreblas/coreblas_z.h"
 
 static inline int
-CORE_zbuild_parsec(dague_execution_unit_t    *context,
-                   dague_execution_context_t *this_task)
+CORE_zbuild_parsec(parsec_execution_stream_t    *context,
+                   parsec_task_t *this_task)
 {
     MORSE_Complex64_t *A;
     int lda;
@@ -36,7 +36,7 @@ CORE_zbuild_parsec(dague_execution_unit_t    *context,
     void (*user_build_callback)(int row_min, int row_max, int col_min, int col_max, void *buffer, int ld, void *user_data) ;
     int row_min, row_max, col_min, col_max;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE, &row_min,
         UNPACK_VALUE, &row_max,
@@ -56,15 +56,15 @@ void MORSE_TASK_zbuild( const MORSE_option_t *options,
                         const MORSE_desc_t *A, int Am, int An, int lda,
                         void *user_data, void* user_build_callback )
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
     int row_min, row_max, col_min, col_max;
     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 ;
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_zbuild_parsec, "zbuild",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_zbuild_parsec, options->priority, "zbuild",
         sizeof(int),   &row_min,                          VALUE,
         sizeof(int),   &row_max,                          VALUE,
         sizeof(int),   &col_min,                          VALUE,
diff --git a/runtime/parsec/codelets/codelet_zgeadd.c b/runtime/parsec/codelets/codelet_zgeadd.c
index a7122d5b1..88d78068a 100644
--- a/runtime/parsec/codelets/codelet_zgeadd.c
+++ b/runtime/parsec/codelets/codelet_zgeadd.c
@@ -30,7 +30,7 @@
 #include "coreblas/coreblas_z.h"
 
 static int
-CORE_zgeadd_parsec(dague_execution_unit_t *context, dague_execution_context_t *this_task)
+CORE_zgeadd_parsec(parsec_execution_stream_t *context, parsec_task_t *this_task)
 {
     MORSE_enum *trans;
     int *M;
@@ -42,7 +42,7 @@ CORE_zgeadd_parsec(dague_execution_unit_t *context, dague_execution_context_t *t
     MORSE_Complex64_t *B;
     int *LDB;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE, &trans,
         UNPACK_VALUE, &M,
@@ -118,10 +118,10 @@ void MORSE_TASK_zgeadd(const MORSE_option_t *options,
                        MORSE_Complex64_t alpha, const MORSE_desc_t *A, int Am, int An, int lda,
                        MORSE_Complex64_t beta,  const MORSE_desc_t *B, int Bm, int Bn, int ldb)
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_zgeadd_parsec, "geadd",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_zgeadd_parsec, options->priority, "geadd",
         sizeof(MORSE_enum),        &trans, VALUE,
         sizeof(int),               &m,     VALUE,
         sizeof(int),               &n,     VALUE,
diff --git a/runtime/parsec/codelets/codelet_zgelqt.c b/runtime/parsec/codelets/codelet_zgelqt.c
index 7185c34ac..b21bbd2ba 100644
--- a/runtime/parsec/codelets/codelet_zgelqt.c
+++ b/runtime/parsec/codelets/codelet_zgelqt.c
@@ -86,7 +86,7 @@
  *
  ******************************************************************************/
 static int
-CORE_zgelqt_parsec(dague_execution_unit_t *context, dague_execution_context_t *this_task)
+CORE_zgelqt_parsec(parsec_execution_stream_t *context, parsec_task_t *this_task)
 {
     int *m;
     int *n;
@@ -98,7 +98,7 @@ CORE_zgelqt_parsec(dague_execution_unit_t *context, dague_execution_context_t *t
     MORSE_Complex64_t *TAU;
     MORSE_Complex64_t *WORK;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE, &m,
         UNPACK_VALUE, &n,
@@ -120,10 +120,10 @@ void MORSE_TASK_zgelqt(const MORSE_option_t *options,
                        const MORSE_desc_t *A, int Am, int An, int lda,
                        const MORSE_desc_t *T, int Tm, int Tn, int ldt)
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_zgelqt_parsec, "gelqt",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_zgelqt_parsec, options->priority, "gelqt",
         sizeof(int),                        &m,     VALUE,
         sizeof(int),                        &n,     VALUE,
         sizeof(int),                        &ib,    VALUE,
diff --git a/runtime/parsec/codelets/codelet_zgemm.c b/runtime/parsec/codelets/codelet_zgemm.c
index 3adbc0a34..13ede15fa 100644
--- a/runtime/parsec/codelets/codelet_zgemm.c
+++ b/runtime/parsec/codelets/codelet_zgemm.c
@@ -30,8 +30,8 @@
  *
  **/
 static int
-CORE_zgemm_parsec(dague_execution_unit_t    *context,
-                  dague_execution_context_t *this_task)
+CORE_zgemm_parsec(parsec_execution_stream_t    *context,
+                  parsec_task_t *this_task)
 {
     MORSE_enum *transA;
     MORSE_enum *transB;
@@ -47,7 +47,7 @@ CORE_zgemm_parsec(dague_execution_unit_t    *context,
     MORSE_Complex64_t *C;
     int *ldc;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE, &transA,
         UNPACK_VALUE, &transB,
@@ -78,22 +78,22 @@ void MORSE_TASK_zgemm(const MORSE_option_t *options,
                                                 const MORSE_desc_t *B, int Bm, int Bn, int ldb,
                       MORSE_Complex64_t beta, const MORSE_desc_t *C, int Cm, int Cn, int ldc)
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_zgemm_parsec, "Gemm",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_zgemm_parsec, options->priority, "Gemm",
         sizeof(MORSE_enum),    &transA,                           VALUE,
         sizeof(MORSE_enum),    &transB,                           VALUE,
         sizeof(int),           &m,                                VALUE,
         sizeof(int),           &n,                                VALUE,
         sizeof(int),           &k,                                VALUE,
         sizeof(MORSE_Complex64_t),           &alpha,              VALUE,
-        PASSED_BY_REF,     RTBLKADDR( A, MORSE_Complex64_t, Am, An ),     INPUT | REGION_FULL,
+        PASSED_BY_REF,     RTBLKADDR( A, MORSE_Complex64_t, Am, An ),     INPUT | morse_parsec_get_arena_index(A),
         sizeof(int),           &lda,                              VALUE,
-        PASSED_BY_REF,     RTBLKADDR( B, MORSE_Complex64_t, Bm, Bn ),     INPUT | REGION_FULL,
+        PASSED_BY_REF,     RTBLKADDR( B, MORSE_Complex64_t, Bm, Bn ),     INPUT | morse_parsec_get_arena_index(B),
         sizeof(int),           &ldb,                              VALUE,
         sizeof(MORSE_Complex64_t),           &beta,               VALUE,
-        PASSED_BY_REF,     RTBLKADDR( C, MORSE_Complex64_t, Cm, Cn ),     INOUT | REGION_FULL,
+        PASSED_BY_REF,     RTBLKADDR( C, MORSE_Complex64_t, Cm, Cn ),     INOUT | morse_parsec_get_arena_index(C) | AFFINITY,
         sizeof(int),           &ldc,                              VALUE,
         0);
 }
diff --git a/runtime/parsec/codelets/codelet_zgeqrt.c b/runtime/parsec/codelets/codelet_zgeqrt.c
index 0edbf9f04..93c9bd85d 100644
--- a/runtime/parsec/codelets/codelet_zgeqrt.c
+++ b/runtime/parsec/codelets/codelet_zgeqrt.c
@@ -87,7 +87,7 @@
  *
  ******************************************************************************/
 static int
-CORE_zgeqrt_parsec (dague_execution_unit_t *context, dague_execution_context_t *this_task)
+CORE_zgeqrt_parsec (parsec_execution_stream_t *context, parsec_task_t *this_task)
 {
     int *m;
     int *n;
@@ -99,7 +99,7 @@ CORE_zgeqrt_parsec (dague_execution_unit_t *context, dague_execution_context_t *
     MORSE_Complex64_t *TAU;
     MORSE_Complex64_t *WORK;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE, &m,
         UNPACK_VALUE, &n,
@@ -121,10 +121,10 @@ void MORSE_TASK_zgeqrt(const MORSE_option_t *options,
                        const MORSE_desc_t *A, int Am, int An, int lda,
                        const MORSE_desc_t *T, int Tm, int Tn, int ldt)
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_zgeqrt_parsec, "geqrt",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_zgeqrt_parsec, options->priority, "geqrt",
         sizeof(int),           &m,                             VALUE,
         sizeof(int),           &n,                             VALUE,
         sizeof(int),           &ib,                            VALUE,
diff --git a/runtime/parsec/codelets/codelet_zgessm.c b/runtime/parsec/codelets/codelet_zgessm.c
index 27ffdab26..f21ab9dbb 100644
--- a/runtime/parsec/codelets/codelet_zgessm.c
+++ b/runtime/parsec/codelets/codelet_zgessm.c
@@ -70,7 +70,7 @@
  *
  ******************************************************************************/
 static int
-CORE_zgessm_parsec(dague_execution_unit_t *context, dague_execution_context_t *this_task)
+CORE_zgessm_parsec(parsec_execution_stream_t *context, parsec_task_t *this_task)
 {
     int *m;
     int *n;
@@ -84,7 +84,7 @@ CORE_zgessm_parsec(dague_execution_unit_t *context, dague_execution_context_t *t
     MORSE_Complex64_t *A;
     int *lda;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE, &m,
         UNPACK_VALUE, &n,
@@ -110,10 +110,10 @@ void MORSE_TASK_zgessm(const MORSE_option_t *options,
                        const MORSE_desc_t *D, int Dm, int Dn, int ldd,
                        const MORSE_desc_t *A, int Am, int An, int lda)
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_zgessm_parsec, "gessm",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_zgessm_parsec, options->priority, "gessm",
         sizeof(int),           &m,                                VALUE,
         sizeof(int),           &n,                                VALUE,
         sizeof(int),           &k,                                VALUE,
diff --git a/runtime/parsec/codelets/codelet_zgessq.c b/runtime/parsec/codelets/codelet_zgessq.c
index 17ad5b091..b19ff431d 100644
--- a/runtime/parsec/codelets/codelet_zgessq.c
+++ b/runtime/parsec/codelets/codelet_zgessq.c
@@ -25,7 +25,7 @@
 #include "coreblas/coreblas_z.h"
 
 static int
-CORE_zgessq_parsec(dague_execution_unit_t *context, dague_execution_context_t *this_task)
+CORE_zgessq_parsec(parsec_execution_stream_t *context, parsec_task_t *this_task)
 {
     int *m;
     int *n;
@@ -33,7 +33,7 @@ CORE_zgessq_parsec(dague_execution_unit_t *context, dague_execution_context_t *t
     int *lda;
     double *SCALESUMSQ;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE, &m,
         UNPACK_VALUE, &n,
@@ -51,10 +51,10 @@ void MORSE_TASK_zgessq( const MORSE_option_t *options,
                         const MORSE_desc_t *A, int Am, int An, int lda,
                         const MORSE_desc_t *SCALESUMSQ, int SCALESUMSQm, int SCALESUMSQn )
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_zgessq_parsec, "gessq",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_zgessq_parsec, options->priority, "gessq",
         sizeof(int),    &m,            VALUE,
         sizeof(int),    &n,            VALUE,
         PASSED_BY_REF,   RTBLKADDR( A, MORSE_Complex64_t, Am, An ),                            INPUT | REGION_FULL,
diff --git a/runtime/parsec/codelets/codelet_zgetrf.c b/runtime/parsec/codelets/codelet_zgetrf.c
index cbcc82c1e..03cf388a5 100644
--- a/runtime/parsec/codelets/codelet_zgetrf.c
+++ b/runtime/parsec/codelets/codelet_zgetrf.c
@@ -25,7 +25,7 @@
 #include "coreblas/coreblas_z.h"
 
 static int
-CORE_zgetrf_parsec(dague_execution_unit_t *context, dague_execution_context_t *this_task)
+CORE_zgetrf_parsec(parsec_execution_stream_t *context, parsec_task_t *this_task)
 {
     int *m;
     int *n;
@@ -36,7 +36,7 @@ CORE_zgetrf_parsec(dague_execution_unit_t *context, dague_execution_context_t *t
     int *iinfo;
     int info;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE, &m,
         UNPACK_VALUE, &n,
@@ -57,10 +57,10 @@ void MORSE_TASK_zgetrf(const MORSE_option_t *options,
                        int *IPIV,
                        MORSE_bool check_info, int iinfo)
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_zgetrf_parsec, "getrf",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_zgetrf_parsec, options->priority, "getrf",
         sizeof(int),        &m,                          VALUE,
         sizeof(int),        &n,                          VALUE,
         PASSED_BY_REF,       RTBLKADDR( A, MORSE_Complex64_t, Am, An ),     INOUT | REGION_FULL,
diff --git a/runtime/parsec/codelets/codelet_zgetrf_incpiv.c b/runtime/parsec/codelets/codelet_zgetrf_incpiv.c
index 0782304da..84bed781a 100644
--- a/runtime/parsec/codelets/codelet_zgetrf_incpiv.c
+++ b/runtime/parsec/codelets/codelet_zgetrf_incpiv.c
@@ -79,7 +79,7 @@
  *
  ******************************************************************************/
 static int
-CORE_zgetrf_incpiv_parsec(dague_execution_unit_t *context, dague_execution_context_t *this_task)
+CORE_zgetrf_incpiv_parsec(parsec_execution_stream_t *context, parsec_task_t *this_task)
 {
     int *m;
     int *n;
@@ -92,7 +92,7 @@ CORE_zgetrf_incpiv_parsec(dague_execution_unit_t *context, dague_execution_conte
 
     int info;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE, &m,
         UNPACK_VALUE, &n,
@@ -115,10 +115,10 @@ void MORSE_TASK_zgetrf_incpiv(const MORSE_option_t *options,
                               int *IPIV,
                               MORSE_bool check_info, int iinfo)
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_zgetrf_incpiv_parsec, "getrf_inc",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_zgetrf_incpiv_parsec, options->priority, "getrf_inc",
         sizeof(int),           &m,                                VALUE,
         sizeof(int),           &n,                                VALUE,
         sizeof(int),           &ib,                               VALUE,
diff --git a/runtime/parsec/codelets/codelet_zgetrf_nopiv.c b/runtime/parsec/codelets/codelet_zgetrf_nopiv.c
index e16a90c3d..1152b26c0 100644
--- a/runtime/parsec/codelets/codelet_zgetrf_nopiv.c
+++ b/runtime/parsec/codelets/codelet_zgetrf_nopiv.c
@@ -72,7 +72,7 @@
  *
  ******************************************************************************/
 static int
-CORE_zgetrf_nopiv_parsec(dague_execution_unit_t *context, dague_execution_context_t *this_task)
+CORE_zgetrf_nopiv_parsec(parsec_execution_stream_t *context, parsec_task_t *this_task)
 {
     int *m;
     int *n;
@@ -82,7 +82,7 @@ CORE_zgetrf_nopiv_parsec(dague_execution_unit_t *context, dague_execution_contex
     int *iinfo;
     int info;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE, &m,
         UNPACK_VALUE, &n,
@@ -101,10 +101,10 @@ void MORSE_TASK_zgetrf_nopiv(const MORSE_option_t *options,
                              const MORSE_desc_t *A, int Am, int An, int lda,
                              int iinfo)
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_zgetrf_nopiv_parsec, "getrf_nopiv",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_zgetrf_nopiv_parsec, options->priority,  "getrf_nopiv",
         sizeof(int),           &m,                          VALUE,
         sizeof(int),           &n,                          VALUE,
         sizeof(int),           &ib,                         VALUE,
diff --git a/runtime/parsec/codelets/codelet_zhe2ge.c b/runtime/parsec/codelets/codelet_zhe2ge.c
index 3dae0955a..04488862b 100644
--- a/runtime/parsec/codelets/codelet_zhe2ge.c
+++ b/runtime/parsec/codelets/codelet_zhe2ge.c
@@ -30,8 +30,8 @@
  *
  **/
 static inline int
-CORE_zhe2ge_parsec(dague_execution_unit_t    *context,
-                   dague_execution_context_t *this_task)
+CORE_zhe2ge_parsec(parsec_execution_stream_t    *context,
+                   parsec_task_t *this_task)
 {
     MORSE_enum *uplo;
     int *M;
@@ -41,7 +41,7 @@ CORE_zhe2ge_parsec(dague_execution_unit_t    *context,
     MORSE_Complex64_t *B;
     int *LDB;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE, &uplo,
         UNPACK_VALUE, &M,
@@ -61,10 +61,10 @@ void MORSE_TASK_zhe2ge(const MORSE_option_t *options,
                        const MORSE_desc_t *A, int Am, int An, int lda,
                        const MORSE_desc_t *B, int Bm, int Bn, int ldb)
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_zhe2ge_parsec, "he2ge",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_zhe2ge_parsec, options->priority, "he2ge",
         sizeof(MORSE_enum), &uplo,   VALUE,
         sizeof(int),        &m,      VALUE,
         sizeof(int),        &n,      VALUE,
diff --git a/runtime/parsec/codelets/codelet_zhemm.c b/runtime/parsec/codelets/codelet_zhemm.c
index 6f0dfa920..4402c15b2 100644
--- a/runtime/parsec/codelets/codelet_zhemm.c
+++ b/runtime/parsec/codelets/codelet_zhemm.c
@@ -30,7 +30,7 @@
  *
  **/
 static int
-CORE_zhemm_parsec(dague_execution_unit_t *context, dague_execution_context_t *this_task)
+CORE_zhemm_parsec(parsec_execution_stream_t *context, parsec_task_t *this_task)
 {
     MORSE_enum *side;
     MORSE_enum *uplo;
@@ -45,7 +45,7 @@ CORE_zhemm_parsec(dague_execution_unit_t *context, dague_execution_context_t *th
     MORSE_Complex64_t *C;
     int *LDC;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE, &side,
         UNPACK_VALUE, &uplo,
@@ -75,10 +75,10 @@ void MORSE_TASK_zhemm(const MORSE_option_t *options,
                       const MORSE_desc_t *B, int Bm, int Bn, int ldb,
                       MORSE_Complex64_t beta, const MORSE_desc_t *C, int Cm, int Cn, int ldc)
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_zhemm_parsec, "hemm",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_zhemm_parsec, options->priority, "hemm",
         sizeof(MORSE_enum),                &side,    VALUE,
         sizeof(MORSE_enum),                &uplo,    VALUE,
         sizeof(int),                       &m,       VALUE,
diff --git a/runtime/parsec/codelets/codelet_zher2k.c b/runtime/parsec/codelets/codelet_zher2k.c
index ef88ccd1f..78064708c 100644
--- a/runtime/parsec/codelets/codelet_zher2k.c
+++ b/runtime/parsec/codelets/codelet_zher2k.c
@@ -30,7 +30,7 @@
  *
  **/
 static int
-CORE_zher2k_parsec(dague_execution_unit_t *context, dague_execution_context_t *this_task)
+CORE_zher2k_parsec(parsec_execution_stream_t *context, parsec_task_t *this_task)
 {
     MORSE_enum *uplo;
     MORSE_enum *trans;
@@ -45,7 +45,7 @@ CORE_zher2k_parsec(dague_execution_unit_t *context, dague_execution_context_t *t
     MORSE_Complex64_t *C;
     int *ldc;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE, &uplo,
         UNPACK_VALUE, &trans,
@@ -75,21 +75,21 @@ void MORSE_TASK_zher2k(const MORSE_option_t *options,
                        const MORSE_desc_t *B, int Bm, int Bn, int ldb,
                        double beta, const MORSE_desc_t *C, int Cm, int Cn, int ldc)
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_zher2k_parsec, "her2k",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_zher2k_parsec, options->priority, "her2k",
         sizeof(MORSE_enum),                 &uplo,     VALUE,
         sizeof(MORSE_enum),                 &trans,    VALUE,
         sizeof(int),                        &n,        VALUE,
         sizeof(int),                        &k,        VALUE,
         sizeof(MORSE_Complex64_t),          &alpha,    VALUE,
-        PASSED_BY_REF,         RTBLKADDR( A, MORSE_Complex64_t, Am, An ),     INPUT | REGION_FULL,
+        PASSED_BY_REF,         RTBLKADDR( A, MORSE_Complex64_t, Am, An ),     INPUT | morse_parsec_get_arena_index(A),
         sizeof(int),                        &lda,      VALUE,
-        PASSED_BY_REF,         RTBLKADDR( B, MORSE_Complex64_t, Bm, Bn ),     INPUT | REGION_FULL,
+        PASSED_BY_REF,         RTBLKADDR( B, MORSE_Complex64_t, Bm, Bn ),     INPUT | morse_parsec_get_arena_index(B),
         sizeof(int),                        &ldb,      VALUE,
         sizeof(double),                     &beta,     VALUE,
-        PASSED_BY_REF,         RTBLKADDR( C, MORSE_Complex64_t, Cm, Cn ),     INOUT | REGION_FULL,
+        PASSED_BY_REF,         RTBLKADDR( C, MORSE_Complex64_t, Cm, Cn ),     INOUT | morse_parsec_get_arena_index(C) | AFFINITY,
         sizeof(int),                        &ldc,      VALUE,
         0);
 }
diff --git a/runtime/parsec/codelets/codelet_zherfb.c b/runtime/parsec/codelets/codelet_zherfb.c
index af42a6fd7..c96cabf08 100644
--- a/runtime/parsec/codelets/codelet_zherfb.c
+++ b/runtime/parsec/codelets/codelet_zherfb.c
@@ -27,8 +27,8 @@
 #include "coreblas/coreblas_z.h"
 
 static inline int
-CORE_zherfb_parsec(dague_execution_unit_t    *context,
-                   dague_execution_context_t *this_task)
+CORE_zherfb_parsec(parsec_execution_stream_t    *context,
+                   parsec_task_t *this_task)
 {
     MORSE_enum *uplo;
     int *n;
@@ -44,7 +44,7 @@ CORE_zherfb_parsec(dague_execution_unit_t    *context,
     MORSE_Complex64_t *WORK;
     int *ldwork;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE,   &uplo,
         UNPACK_VALUE,   &n,
@@ -72,20 +72,20 @@ void MORSE_TASK_zherfb(const MORSE_option_t *options,
                        const MORSE_desc_t *T, int Tm, int Tn, int ldt,
                        const MORSE_desc_t *C, int Cm, int Cn, int ldc)
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_zherfb_parsec, "herfb",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_zherfb_parsec, options->priority, "herfb",
         sizeof(MORSE_enum), &uplo, VALUE,
         sizeof(int),        &n,    VALUE,
         sizeof(int),        &k,    VALUE,
         sizeof(int),        &ib,   VALUE,
         sizeof(int),        &nb,   VALUE,
-        PASSED_BY_REF,       RTBLKADDR(A, MORSE_Complex64_t, Am, An), (uplo == MorseUpper) ? INOUT | REGION_U : INOUT | REGION_L,
+        PASSED_BY_REF,       RTBLKADDR(A, MORSE_Complex64_t, Am, An), (uplo == MorseUpper) ? INOUT | REGION_FULL : INOUT | REGION_FULL,
         sizeof(int),        &lda,  VALUE,
         PASSED_BY_REF,       RTBLKADDR(T, MORSE_Complex64_t, Tm, Tn), INPUT | REGION_FULL,
         sizeof(int),        &ldt,  VALUE,
-        PASSED_BY_REF,       RTBLKADDR(C, MORSE_Complex64_t, Cm, Cn), (uplo == MorseUpper) ? INOUT | REGION_D | REGION_U : INOUT | REGION_D | REGION_L,
+        PASSED_BY_REF,       RTBLKADDR(C, MORSE_Complex64_t, Cm, Cn), (uplo == MorseUpper) ? INOUT | REGION_FULL : INOUT | REGION_FULL,
         sizeof(int),        &ldc,  VALUE,
         sizeof(MORSE_Complex64_t)*2*nb*nb,  NULL, SCRATCH,
         sizeof(int),        &nb,   VALUE,
diff --git a/runtime/parsec/codelets/codelet_zherk.c b/runtime/parsec/codelets/codelet_zherk.c
index 6acc7808b..738572657 100644
--- a/runtime/parsec/codelets/codelet_zherk.c
+++ b/runtime/parsec/codelets/codelet_zherk.c
@@ -31,7 +31,7 @@
  **/
 
 static int
-CORE_zherk_parsec(dague_execution_unit_t *context, dague_execution_context_t * this_task)
+CORE_zherk_parsec(parsec_execution_stream_t *context, parsec_task_t * this_task)
 {
     MORSE_enum *uplo;
     MORSE_enum *trans;
@@ -44,7 +44,7 @@ CORE_zherk_parsec(dague_execution_unit_t *context, dague_execution_context_t * t
     MORSE_Complex64_t *C;
     int *ldc;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE, &uplo,
         UNPACK_VALUE, &trans,
@@ -70,19 +70,19 @@ void MORSE_TASK_zherk(const MORSE_option_t *options,
                       double alpha, const MORSE_desc_t *A, int Am, int An, int lda,
                       double beta, const MORSE_desc_t *C, int Cm, int Cn, int ldc)
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_zherk_parsec, "herk",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_zherk_parsec, options->priority, "herk",
         sizeof(MORSE_enum),    &uplo,                             VALUE,
         sizeof(MORSE_enum),    &trans,                            VALUE,
         sizeof(int),           &n,                                VALUE,
         sizeof(int),           &k,                                VALUE,
         sizeof(double),        &alpha,                            VALUE,
-        PASSED_BY_REF,         RTBLKADDR( A, MORSE_Complex64_t, Am, An ),     INPUT | REGION_FULL,
+        PASSED_BY_REF,         RTBLKADDR( A, MORSE_Complex64_t, Am, An ),     INPUT | morse_parsec_get_arena_index(A),
         sizeof(int),           &lda,                              VALUE,
         sizeof(double),        &beta,                             VALUE,
-        PASSED_BY_REF,         RTBLKADDR( C, MORSE_Complex64_t, Cm, Cn ),     INOUT | REGION_FULL,
+        PASSED_BY_REF,         RTBLKADDR( C, MORSE_Complex64_t, Cm, Cn ),     INOUT | morse_parsec_get_arena_index(C) | AFFINITY,
         sizeof(int),           &ldc,                              VALUE,
         0);
 }
diff --git a/runtime/parsec/codelets/codelet_zhessq.c b/runtime/parsec/codelets/codelet_zhessq.c
index 31626fac4..033c79b6b 100644
--- a/runtime/parsec/codelets/codelet_zhessq.c
+++ b/runtime/parsec/codelets/codelet_zhessq.c
@@ -25,7 +25,7 @@
 #include "coreblas/coreblas_z.h"
 
 static int
-CORE_zhessq_parsec(dague_execution_unit_t *context, dague_execution_context_t *this_task)
+CORE_zhessq_parsec(parsec_execution_stream_t *context, parsec_task_t *this_task)
 {
     MORSE_enum *uplo;
     int *n;
@@ -33,7 +33,7 @@ CORE_zhessq_parsec(dague_execution_unit_t *context, dague_execution_context_t *t
     int *lda;
     double *SCALESUMSQ;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE, &uplo,
         UNPACK_VALUE, &n,
@@ -51,10 +51,10 @@ void MORSE_TASK_zhessq( const MORSE_option_t *options,
                         const MORSE_desc_t *A, int Am, int An, int lda,
                         const MORSE_desc_t *SCALESUMSQ, int SCALESUMSQm, int SCALESUMSQn )
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_zhessq_parsec, "hessq",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_zhessq_parsec, options->priority, "hessq",
         sizeof(int),           &uplo,               VALUE,
         sizeof(int),           &n,                  VALUE,
         PASSED_BY_REF,         RTBLKADDR( A, MORSE_Complex64_t, Am, An ),                    INPUT | REGION_FULL,
diff --git a/runtime/parsec/codelets/codelet_zlacpy.c b/runtime/parsec/codelets/codelet_zlacpy.c
index 3622c6ce7..43875e1d5 100644
--- a/runtime/parsec/codelets/codelet_zlacpy.c
+++ b/runtime/parsec/codelets/codelet_zlacpy.c
@@ -30,7 +30,7 @@
  *
  **/
 static int
-CORE_zlacpy_parsec(dague_execution_unit_t *context, dague_execution_context_t * this_task)
+CORE_zlacpy_parsec(parsec_execution_stream_t *context, parsec_task_t * this_task)
 {
     MORSE_enum *uplo;
     int *M;
@@ -40,7 +40,7 @@ CORE_zlacpy_parsec(dague_execution_unit_t *context, dague_execution_context_t *
     MORSE_Complex64_t *B;
     int *LDB;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE, &uplo,
         UNPACK_VALUE, &M,
@@ -61,10 +61,10 @@ void MORSE_TASK_zlacpy(const MORSE_option_t *options,
                        const MORSE_desc_t *B, int Bm, int Bn, int ldb)
 {
 
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_zlacpy_parsec, "lacpy",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_zlacpy_parsec, options->priority, "lacpy",
         sizeof(MORSE_enum),    &uplo,                      VALUE,
         sizeof(int),           &m,                         VALUE,
         sizeof(int),           &n,                         VALUE,
diff --git a/runtime/parsec/codelets/codelet_zlag2c.c b/runtime/parsec/codelets/codelet_zlag2c.c
index c5d5f8337..8153700f5 100644
--- a/runtime/parsec/codelets/codelet_zlag2c.c
+++ b/runtime/parsec/codelets/codelet_zlag2c.c
@@ -30,7 +30,7 @@
  *
  **/
 static int
-CORE_zlag2c_parsec(dague_execution_unit_t *context, dague_execution_context_t *this_task)
+CORE_zlag2c_parsec(parsec_execution_stream_t *context, parsec_task_t *this_task)
 {
     int *m;
     int *n;
@@ -40,7 +40,7 @@ CORE_zlag2c_parsec(dague_execution_unit_t *context, dague_execution_context_t *t
     int *ldb;
     int info;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE, &m,
         UNPACK_VALUE, &n,
@@ -59,9 +59,9 @@ void MORSE_TASK_zlag2c(const MORSE_option_t *options,
                        const MORSE_desc_t *A, int Am, int An, int lda,
                        const MORSE_desc_t *B, int Bm, int Bn, int ldb)
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(DAGUE_dtd_handle, CORE_zlag2c_parsec, "lag2c",
+    parsec_dtd_taskpool_insert_task(PARSEC_dtd_taskpool, CORE_zlag2c_parsec, "lag2c",
         sizeof(int),                        &m,         VALUE,
         sizeof(int),                        &n,         VALUE,
         PASSED_BY_REF,         RTBLKADDR( A, MORSE_Complex64_t, Am, An ),     INPUT | REGION_FULL,
@@ -77,7 +77,7 @@ void MORSE_TASK_zlag2c(const MORSE_option_t *options,
  *
  **/
 static int
-CORE_clag2z_parsec(dague_execution_unit_t *context, dague_execution_context_t *this_task)
+CORE_clag2z_parsec(parsec_execution_stream_t *context, parsec_task_t *this_task)
 {
     int *m;
     int *n;
@@ -86,7 +86,7 @@ CORE_clag2z_parsec(dague_execution_unit_t *context, dague_execution_context_t *t
     MORSE_Complex64_t *B;
     int *ldb;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE, &m,
         UNPACK_VALUE, &n,
@@ -105,10 +105,10 @@ void MORSE_TASK_clag2z(const MORSE_option_t *options,
                        const MORSE_desc_t *A, int Am, int An, int lda,
                        const MORSE_desc_t *B, int Bm, int Bn, int ldb)
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_clag2z_parsec, "lag2z",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_clag2z_parsec, options->priority, "lag2z",
         sizeof(int),                        &m,         VALUE,
         sizeof(int),                        &n,         VALUE,
         PASSED_BY_REF,         RTBLKADDR( A, MORSE_Complex32_t, Am, An ),     INPUT | REGION_FULL,
diff --git a/runtime/parsec/codelets/codelet_zlange.c b/runtime/parsec/codelets/codelet_zlange.c
index 9b7c64d03..cd3cc78ed 100644
--- a/runtime/parsec/codelets/codelet_zlange.c
+++ b/runtime/parsec/codelets/codelet_zlange.c
@@ -25,7 +25,7 @@
 #include "coreblas/coreblas_z.h"
 
 static int
-CORE_zlange_parsec(dague_execution_unit_t *context, dague_execution_context_t *this_task)
+CORE_zlange_parsec(parsec_execution_stream_t *context, parsec_task_t *this_task)
 {
     MORSE_enum *norm;
     int *M;
@@ -35,7 +35,7 @@ CORE_zlange_parsec(dague_execution_unit_t *context, dague_execution_context_t *t
     double *work;
     double *normA;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE,   &norm,
         UNPACK_VALUE,   &M,
@@ -55,12 +55,12 @@ void MORSE_TASK_zlange(const MORSE_option_t *options,
                        const MORSE_desc_t *A, int Am, int An, int LDA,
                        const MORSE_desc_t *B, int Bm, int Bn)
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
     int szeW = chameleon_max( M, N );
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_zlange_parsec, "lange",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_zlange_parsec, options->priority, "lange",
         sizeof(MORSE_enum),            &norm,          VALUE,
         sizeof(int),                   &M,             VALUE,
         sizeof(int),                   &N,             VALUE,
@@ -73,12 +73,12 @@ void MORSE_TASK_zlange(const MORSE_option_t *options,
 
 #if defined(PRECISION_d) || defined(PRECISION_s)
 static int
-CORE_zlange_max_parsec(dague_execution_unit_t *context, dague_execution_context_t *this_task)
+CORE_zlange_max_parsec(parsec_execution_stream_t *context, parsec_task_t *this_task)
 {
     double *A;
     double *normA;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_DATA,  &A,
         UNPACK_DATA,  &normA );
@@ -93,10 +93,10 @@ void MORSE_TASK_zlange_max(const MORSE_option_t *options,
                            const MORSE_desc_t *A, int Am, int An,
                            const MORSE_desc_t *B, int Bm, int Bn)
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_zlange_max_parsec, "lange_max",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_zlange_max_parsec, options->priority, "lange_max",
         PASSED_BY_REF,         RTBLKADDR( A, double, Am, An ), INPUT | REGION_FULL,
         PASSED_BY_REF,         RTBLKADDR( B, double, Bm, Bn ), OUTPUT | REGION_FULL,
         0);
diff --git a/runtime/parsec/codelets/codelet_zlanhe.c b/runtime/parsec/codelets/codelet_zlanhe.c
index ddd30b0e5..4aa0fff0a 100644
--- a/runtime/parsec/codelets/codelet_zlanhe.c
+++ b/runtime/parsec/codelets/codelet_zlanhe.c
@@ -25,7 +25,7 @@
 #include "coreblas/coreblas_z.h"
 
 static int
-CORE_zlanhe_parsec(dague_execution_unit_t *context, dague_execution_context_t *this_task)
+CORE_zlanhe_parsec(parsec_execution_stream_t *context, parsec_task_t *this_task)
 {
     MORSE_enum *norm;
     MORSE_enum *uplo;
@@ -35,7 +35,7 @@ CORE_zlanhe_parsec(dague_execution_unit_t *context, dague_execution_context_t *t
     double *work;
     double *normA;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE,   &norm,
         UNPACK_VALUE,   &uplo,
@@ -55,12 +55,12 @@ void MORSE_TASK_zlanhe(const MORSE_option_t *options,
                        const MORSE_desc_t *A, int Am, int An, int LDA,
                        const MORSE_desc_t *B, int Bm, int Bn)
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
     int szeW = chameleon_max( 1, N );
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_zlanhe_parsec, "LANHE",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_zlanhe_parsec, options->priority, "LANHE",
         sizeof(MORSE_enum),            &norm,          VALUE,
         sizeof(MORSE_enum),            &uplo,          VALUE,
         sizeof(int),                   &N,             VALUE,
diff --git a/runtime/parsec/codelets/codelet_zlansy.c b/runtime/parsec/codelets/codelet_zlansy.c
index 44a685cb1..07dd0484f 100644
--- a/runtime/parsec/codelets/codelet_zlansy.c
+++ b/runtime/parsec/codelets/codelet_zlansy.c
@@ -25,7 +25,7 @@
 #include "coreblas/coreblas_z.h"
 
 static int
-CORE_zlansy_parsec(dague_execution_unit_t *context, dague_execution_context_t *this_task)
+CORE_zlansy_parsec(parsec_execution_stream_t *context, parsec_task_t *this_task)
 {
     int *norm;
     MORSE_enum *uplo;
@@ -35,7 +35,7 @@ CORE_zlansy_parsec(dague_execution_unit_t *context, dague_execution_context_t *t
     double *work;
     double *normA;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE, &norm,
         UNPACK_VALUE, &uplo,
@@ -55,12 +55,12 @@ void MORSE_TASK_zlansy(const MORSE_option_t *options,
                        const MORSE_desc_t *A, int Am, int An, int LDA,
                        const MORSE_desc_t *B, int Bm, int Bn)
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
     int szeW = chameleon_max( 1, N );
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_zlansy_parsec, "lansy",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_zlansy_parsec, options->priority, "lansy",
         sizeof(MORSE_enum),            &norm,          VALUE,
         sizeof(MORSE_enum),            &uplo,          VALUE,
         sizeof(int),                   &N,             VALUE,
diff --git a/runtime/parsec/codelets/codelet_zlantr.c b/runtime/parsec/codelets/codelet_zlantr.c
index fbff2acfd..08859c485 100644
--- a/runtime/parsec/codelets/codelet_zlantr.c
+++ b/runtime/parsec/codelets/codelet_zlantr.c
@@ -25,7 +25,7 @@
 #include "coreblas/coreblas_z.h"
 
 static int
-CORE_zlantr_parsec(dague_execution_unit_t *context, dague_execution_context_t *this_task)
+CORE_zlantr_parsec(parsec_execution_stream_t *context, parsec_task_t *this_task)
 {
     MORSE_enum *norm, *uplo, *diag;
     int *M;
@@ -35,7 +35,7 @@ CORE_zlantr_parsec(dague_execution_unit_t *context, dague_execution_context_t *t
     double *work;
     double *normA;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE, &norm,
         UNPACK_VALUE, &uplo,
@@ -58,12 +58,12 @@ void MORSE_TASK_zlantr(const MORSE_option_t *options,
                        const MORSE_desc_t *A, int Am, int An, int LDA,
                        const MORSE_desc_t *B, int Bm, int Bn)
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
     int szeW = chameleon_max( 1, N );
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_zlantr_parsec, "lantr",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_zlantr_parsec, options->priority, "lantr",
         sizeof(MORSE_enum),            &norm,          VALUE,
         sizeof(MORSE_enum),            &uplo,          VALUE,
         sizeof(MORSE_enum),            &diag,          VALUE,
diff --git a/runtime/parsec/codelets/codelet_zlascal.c b/runtime/parsec/codelets/codelet_zlascal.c
index f82b08c7e..3153036c4 100644
--- a/runtime/parsec/codelets/codelet_zlascal.c
+++ b/runtime/parsec/codelets/codelet_zlascal.c
@@ -39,8 +39,8 @@
  *
  **/
 static inline int
-CORE_zlascal_parsec(dague_execution_unit_t    *context,
-                    dague_execution_context_t *this_task)
+CORE_zlascal_parsec(parsec_execution_stream_t    *context,
+                    parsec_task_t *this_task)
 {
     MORSE_enum *uplo;
     int *M;
@@ -49,7 +49,7 @@ CORE_zlascal_parsec(dague_execution_unit_t    *context,
     MORSE_Complex64_t *A;
     int *LDA;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE, &uplo,
         UNPACK_VALUE, &M,
@@ -67,10 +67,10 @@ void MORSE_TASK_zlascal(const MORSE_option_t *options,
                         MORSE_Complex64_t alpha,
                         const MORSE_desc_t *A, int Am, int An, int lda)
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_zlascal_parsec, "lascal",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_zlascal_parsec, options->priority, "lascal",
         sizeof(MORSE_enum),        &uplo,  VALUE,
         sizeof(int),               &m,     VALUE,
         sizeof(int),               &n,     VALUE,
diff --git a/runtime/parsec/codelets/codelet_zlaset.c b/runtime/parsec/codelets/codelet_zlaset.c
index c6d182fd6..eee861481 100644
--- a/runtime/parsec/codelets/codelet_zlaset.c
+++ b/runtime/parsec/codelets/codelet_zlaset.c
@@ -60,7 +60,7 @@
  *
  **/
 static int
-CORE_zlaset_parsec(dague_execution_unit_t *context, dague_execution_context_t * this_task)
+CORE_zlaset_parsec(parsec_execution_stream_t *context, parsec_task_t * this_task)
 {
     MORSE_enum *uplo;
     int *M;
@@ -70,7 +70,7 @@ CORE_zlaset_parsec(dague_execution_unit_t *context, dague_execution_context_t *
     MORSE_Complex64_t *A;
     int *LDA;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE, &uplo,
         UNPACK_VALUE, &M,
@@ -90,10 +90,10 @@ void MORSE_TASK_zlaset(const MORSE_option_t *options,
                        MORSE_Complex64_t alpha, MORSE_Complex64_t beta,
                        const MORSE_desc_t *A, int Am, int An, int LDA)
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_zlaset_parsec, "laset",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_zlaset_parsec, options->priority, "laset",
         sizeof(MORSE_enum),              &uplo,        VALUE,
         sizeof(int),                     &M,           VALUE,
         sizeof(int),                     &N,           VALUE,
diff --git a/runtime/parsec/codelets/codelet_zlaset2.c b/runtime/parsec/codelets/codelet_zlaset2.c
index 5c1a7bc4b..667d9f0c8 100644
--- a/runtime/parsec/codelets/codelet_zlaset2.c
+++ b/runtime/parsec/codelets/codelet_zlaset2.c
@@ -58,7 +58,7 @@
  *
  **/
 static int
-CORE_zlaset2_parsec(dague_execution_unit_t *context, dague_execution_context_t *this_task)
+CORE_zlaset2_parsec(parsec_execution_stream_t *context, parsec_task_t *this_task)
 {
     MORSE_enum *uplo;
     int *M;
@@ -67,7 +67,7 @@ CORE_zlaset2_parsec(dague_execution_unit_t *context, dague_execution_context_t *
     MORSE_Complex64_t *A;
     int *LDA;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE, &uplo,
         UNPACK_VALUE, &M,
@@ -85,10 +85,10 @@ void MORSE_TASK_zlaset2(const MORSE_option_t *options,
                        MORSE_enum uplo, int M, int N,
                        MORSE_Complex64_t alpha, const MORSE_desc_t *A, int Am, int An, int LDA)
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_zlaset2_parsec, "laset2",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_zlaset2_parsec, options->priority, "laset2",
         sizeof(MORSE_enum),                &uplo,      VALUE,
         sizeof(int),                       &M,         VALUE,
         sizeof(int),                       &N,         VALUE,
diff --git a/runtime/parsec/codelets/codelet_zlatro.c b/runtime/parsec/codelets/codelet_zlatro.c
index 40955c796..7f18835a4 100644
--- a/runtime/parsec/codelets/codelet_zlatro.c
+++ b/runtime/parsec/codelets/codelet_zlatro.c
@@ -26,8 +26,8 @@
 #include "coreblas/coreblas_z.h"
 
 static inline int
-CORE_zlatro_parsec(dague_execution_unit_t    *context,
-                   dague_execution_context_t *this_task)
+CORE_zlatro_parsec(parsec_execution_stream_t    *context,
+                   parsec_task_t *this_task)
 {
     MORSE_enum *uplo;
     MORSE_enum *trans;
@@ -38,7 +38,7 @@ CORE_zlatro_parsec(dague_execution_unit_t    *context,
     MORSE_Complex64_t *B;
     int *LDB;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE, &uplo,
         UNPACK_VALUE, &trans,
@@ -62,10 +62,10 @@ void MORSE_TASK_zlatro(const MORSE_option_t *options,
                        const MORSE_desc_t *A, int Am, int An, int lda,
                        const MORSE_desc_t *B, int Bm, int Bn, int ldb)
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_zlatro_parsec, "latro",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_zlatro_parsec, options->priority, "latro",
         sizeof(MORSE_enum), &uplo,  VALUE,
         sizeof(MORSE_enum), &trans, VALUE,
         sizeof(int),        &m,     VALUE,
diff --git a/runtime/parsec/codelets/codelet_zlauum.c b/runtime/parsec/codelets/codelet_zlauum.c
index 286d01d0a..94a5fbcf6 100644
--- a/runtime/parsec/codelets/codelet_zlauum.c
+++ b/runtime/parsec/codelets/codelet_zlauum.c
@@ -30,14 +30,14 @@
  *
  **/
 static int
-CORE_zlauum_parsec(dague_execution_unit_t *context, dague_execution_context_t * this_task)
+CORE_zlauum_parsec(parsec_execution_stream_t *context, parsec_task_t * this_task)
 {
     MORSE_enum *uplo;
     int *N;
     MORSE_Complex64_t *A;
     int *LDA;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE, &uplo,
         UNPACK_VALUE, &N,
@@ -53,10 +53,10 @@ void MORSE_TASK_zlauum(const MORSE_option_t *options,
                        MORSE_enum uplo, int n, int nb,
                        const MORSE_desc_t *A, int Am, int An, int lda)
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_zlauum_parsec, "lauum",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_zlauum_parsec, options->priority, "lauum",
         sizeof(MORSE_enum),    &uplo,                  VALUE,
         sizeof(int),           &n,                     VALUE,
         PASSED_BY_REF,         RTBLKADDR( A, MORSE_Complex64_t, Am, An ),     INOUT | REGION_FULL,
diff --git a/runtime/parsec/codelets/codelet_zpamm.c b/runtime/parsec/codelets/codelet_zpamm.c
index b5f4cda49..ca6920d3a 100644
--- a/runtime/parsec/codelets/codelet_zpamm.c
+++ b/runtime/parsec/codelets/codelet_zpamm.c
@@ -169,7 +169,7 @@
 /***************************************************************************/
 
 static int
-CORE_zpamm_parsec(dague_execution_unit_t *context, dague_execution_context_t *this_task)
+CORE_zpamm_parsec(parsec_execution_stream_t *context, parsec_task_t *this_task)
 {
     int *op;
     MORSE_enum *side;
@@ -187,7 +187,7 @@ CORE_zpamm_parsec(dague_execution_unit_t *context, dague_execution_context_t *th
     MORSE_Complex64_t *W;
     int *LDW;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE, &op,
         UNPACK_VALUE, &side,
@@ -219,10 +219,10 @@ MORSE_TASK_zpamm(const MORSE_option_t *options,
                  const MORSE_desc_t *V, int Vm, int Vn, int ldv,
                        const MORSE_desc_t *W, int Wm, int Wn, int ldw)
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_zpamm_parsec, "pamm",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_zpamm_parsec, options->priority, "pamm",
         sizeof(int),                        &op,                VALUE,
         sizeof(MORSE_enum),                 &side,              VALUE,
         sizeof(MORSE_enum),                 &storev,            VALUE,
diff --git a/runtime/parsec/codelets/codelet_zplghe.c b/runtime/parsec/codelets/codelet_zplghe.c
index b14fdd87d..13dfda18c 100644
--- a/runtime/parsec/codelets/codelet_zplghe.c
+++ b/runtime/parsec/codelets/codelet_zplghe.c
@@ -25,7 +25,7 @@
 #include "coreblas/coreblas_z.h"
 
 static int
-CORE_zplghe_parsec(dague_execution_unit_t *context, dague_execution_context_t *this_task)
+CORE_zplghe_parsec(parsec_execution_stream_t *context, parsec_task_t *this_task)
 {
     double *bump;
     int *m;
@@ -37,7 +37,7 @@ CORE_zplghe_parsec(dague_execution_unit_t *context, dague_execution_context_t *t
     int *n0;
     unsigned long long int *seed;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE, &bump,
         UNPACK_VALUE, &m,
@@ -58,14 +58,14 @@ void MORSE_TASK_zplghe( const MORSE_option_t *options,
                         double bump, int m, int n, const MORSE_desc_t *A, int Am, int An, int lda,
                         int bigM, int m0, int n0, unsigned long long int seed )
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_zplghe_parsec, "zplghe",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_zplghe_parsec, options->priority, "zplghe",
         sizeof(double),    &bump,                          VALUE,
         sizeof(int),       &m,                             VALUE,
         sizeof(int),       &n,                             VALUE,
-        PASSED_BY_REF,     RTBLKADDR( A, MORSE_Complex64_t, Am, An ),     OUTPUT | REGION_FULL,
+        PASSED_BY_REF,     RTBLKADDR( A, MORSE_Complex64_t, Am, An ),     OUTPUT | morse_parsec_get_arena_index(A) | AFFINITY,
         sizeof(int),       &lda,                           VALUE,
         sizeof(int),       &bigM,                          VALUE,
         sizeof(int),       &m0,                            VALUE,
diff --git a/runtime/parsec/codelets/codelet_zplgsy.c b/runtime/parsec/codelets/codelet_zplgsy.c
index fecf2c464..afd91170b 100644
--- a/runtime/parsec/codelets/codelet_zplgsy.c
+++ b/runtime/parsec/codelets/codelet_zplgsy.c
@@ -25,7 +25,7 @@
 #include "coreblas/coreblas_z.h"
 
 static int
-CORE_zplgsy_parsec(dague_execution_unit_t *context, dague_execution_context_t *this_task)
+CORE_zplgsy_parsec(parsec_execution_stream_t *context, parsec_task_t *this_task)
 {
     MORSE_Complex64_t *bump;
     int *m;
@@ -37,7 +37,7 @@ CORE_zplgsy_parsec(dague_execution_unit_t *context, dague_execution_context_t *t
     int *n0;
     unsigned long long int *seed;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE, &bump,
         UNPACK_VALUE, &m,
@@ -58,14 +58,14 @@ void MORSE_TASK_zplgsy( const MORSE_option_t *options,
                         MORSE_Complex64_t bump, int m, int n, const MORSE_desc_t *A, int Am, int An, int lda,
                         int bigM, int m0, int n0, unsigned long long int seed )
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_zplgsy_parsec, "zplgsy",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_zplgsy_parsec, options->priority, "zplgsy",
         sizeof(MORSE_Complex64_t), &bump,                          VALUE,
         sizeof(int),               &m,                             VALUE,
         sizeof(int),               &n,                             VALUE,
-        PASSED_BY_REF,             RTBLKADDR( A, MORSE_Complex64_t, Am, An ),     OUTPUT | REGION_FULL,
+        PASSED_BY_REF,             RTBLKADDR( A, MORSE_Complex64_t, Am, An ),     OUTPUT | morse_parsec_get_arena_index(A) | AFFINITY,
         sizeof(int),               &lda,                           VALUE,
         sizeof(int),               &bigM,                          VALUE,
         sizeof(int),               &m0,                            VALUE,
diff --git a/runtime/parsec/codelets/codelet_zplrnt.c b/runtime/parsec/codelets/codelet_zplrnt.c
index abd11e4e3..a4334cb21 100644
--- a/runtime/parsec/codelets/codelet_zplrnt.c
+++ b/runtime/parsec/codelets/codelet_zplrnt.c
@@ -25,7 +25,7 @@
 #include "coreblas/coreblas_z.h"
 
 static int
-CORE_zplrnt_parsec(dague_execution_unit_t *context, dague_execution_context_t *this_task)
+CORE_zplrnt_parsec(parsec_execution_stream_t *context, parsec_task_t *this_task)
 {
     int *m;
     int *n;
@@ -36,7 +36,7 @@ CORE_zplrnt_parsec(dague_execution_unit_t *context, dague_execution_context_t *t
     int *n0;
     unsigned long long int *seed;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE, &m,
         UNPACK_VALUE, &n,
@@ -56,10 +56,10 @@ void MORSE_TASK_zplrnt( const MORSE_option_t *options,
                         int m, int n, const MORSE_desc_t *A, int Am, int An, int lda,
                         int bigM, int m0, int n0, unsigned long long int seed )
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_zplrnt_parsec, "zplrnt",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_zplrnt_parsec, options->priority, "zplrnt",
         sizeof(int),       &m,                          VALUE,
         sizeof(int),       &n,                          VALUE,
         PASSED_BY_REF,     RTBLKADDR( A, MORSE_Complex64_t, Am, An ),     OUTPUT | REGION_FULL,
diff --git a/runtime/parsec/codelets/codelet_zplssq.c b/runtime/parsec/codelets/codelet_zplssq.c
index a68abc47d..32ff0454d 100644
--- a/runtime/parsec/codelets/codelet_zplssq.c
+++ b/runtime/parsec/codelets/codelet_zplssq.c
@@ -57,12 +57,12 @@
  *
  */
 static int
-CORE_zplssq_parsec(dague_execution_unit_t *context, dague_execution_context_t *this_task)
+CORE_zplssq_parsec(parsec_execution_stream_t *context, parsec_task_t *this_task)
 {
     double *SCALESUMSQ;
     double *SCLSSQ;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_DATA,  &SCALESUMSQ,
         UNPACK_DATA,  &SCLSSQ );
@@ -81,21 +81,21 @@ void MORSE_TASK_zplssq( const MORSE_option_t *options,
                         const MORSE_desc_t *SCALESUMSQ, int SCALESUMSQm, int SCALESUMSQn,
                         const MORSE_desc_t *SCLSSQ,     int SCLSSQm,     int SCLSSQn )
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_zplssq_parsec, "plssq",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_zplssq_parsec, options->priority, "plssq",
         PASSED_BY_REF,         RTBLKADDR( SCALESUMSQ, double, SCALESUMSQm, SCALESUMSQn ),    INPUT | REGION_FULL,
         PASSED_BY_REF,         RTBLKADDR( SCLSSQ, double, SCLSSQm, SCLSSQn ),                INOUT | REGION_FULL,
         0);
 }
 
 static int
-CORE_zplssq2_parsec(dague_execution_unit_t *context, dague_execution_context_t *this_task)
+CORE_zplssq2_parsec(parsec_execution_stream_t *context, parsec_task_t *this_task)
 {
     double *RESULT;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_DATA, &RESULT );
 
@@ -107,10 +107,10 @@ CORE_zplssq2_parsec(dague_execution_unit_t *context, dague_execution_context_t *
 void MORSE_TASK_zplssq2( const MORSE_option_t *options,
                          const MORSE_desc_t *RESULT, int RESULTm, int RESULTn )
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_zplssq2_parsec, "plssq2",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_zplssq2_parsec, options->priority, "plssq2",
         PASSED_BY_REF,         RTBLKADDR( RESULT, double, RESULTm, RESULTn ),     INOUT | REGION_FULL,
         0);
 }
diff --git a/runtime/parsec/codelets/codelet_zpotrf.c b/runtime/parsec/codelets/codelet_zpotrf.c
index 1e1976c1e..9cdf2486d 100644
--- a/runtime/parsec/codelets/codelet_zpotrf.c
+++ b/runtime/parsec/codelets/codelet_zpotrf.c
@@ -30,13 +30,13 @@
  *
  **/
 static int
-CORE_zpotrf_parsec(dague_execution_unit_t *context, dague_execution_context_t *this_task)
+CORE_zpotrf_parsec(parsec_execution_stream_t *context, parsec_task_t *this_task)
 {
     MORSE_enum *uplo;
     int *tempkm, *ldak, *iinfo;
     MORSE_Complex64_t *A;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE, &uplo,
         UNPACK_VALUE, &tempkm,
@@ -54,13 +54,13 @@ void MORSE_TASK_zpotrf(const MORSE_option_t *options,
                        const MORSE_desc_t *A, int Am, int An, int lda,
                        int iinfo)
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_zpotrf_parsec, "potrf",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_zpotrf_parsec, options->priority, "potrf",
         sizeof(MORSE_enum),    &uplo,                             VALUE,
         sizeof(int),           &n,                                VALUE,
-        PASSED_BY_REF,         RTBLKADDR( A, MORSE_Complex64_t, Am, An ),     INOUT | REGION_FULL,
+        PASSED_BY_REF,         RTBLKADDR( A, MORSE_Complex64_t, Am, An ),     INOUT | morse_parsec_get_arena_index(A) | AFFINITY,
         sizeof(int),           &lda,                              VALUE,
         sizeof(int),           &iinfo,                            VALUE,
         0);
diff --git a/runtime/parsec/codelets/codelet_zssssm.c b/runtime/parsec/codelets/codelet_zssssm.c
index 86c5543f0..dcf3a61f4 100644
--- a/runtime/parsec/codelets/codelet_zssssm.c
+++ b/runtime/parsec/codelets/codelet_zssssm.c
@@ -25,7 +25,7 @@
 #include "coreblas/coreblas_z.h"
 
 static int
-CORE_zssssm_parsec(dague_execution_unit_t *context, dague_execution_context_t * this_task)
+CORE_zssssm_parsec(parsec_execution_stream_t *context, parsec_task_t * this_task)
 {
     int *m1;
     int *n1;
@@ -43,7 +43,7 @@ CORE_zssssm_parsec(dague_execution_unit_t *context, dague_execution_context_t *
     int *ldl2;
     int *IPIV;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE,   &m1,
         UNPACK_VALUE,   &n1,
@@ -74,10 +74,10 @@ void MORSE_TASK_zssssm(const MORSE_option_t *options,
                        const MORSE_desc_t *L2, int L2m, int L2n, int ldl2,
                        const int *IPIV)
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_zssssm_parsec, "ssssm",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_zssssm_parsec, options->priority, "ssssm",
         sizeof(int),           &m1,                                VALUE,
         sizeof(int),           &n1,                                VALUE,
         sizeof(int),           &m2,                                VALUE,
diff --git a/runtime/parsec/codelets/codelet_zsymm.c b/runtime/parsec/codelets/codelet_zsymm.c
index f8a8383f0..b268138b2 100644
--- a/runtime/parsec/codelets/codelet_zsymm.c
+++ b/runtime/parsec/codelets/codelet_zsymm.c
@@ -25,7 +25,7 @@
 #include "coreblas/coreblas_z.h"
 
 static int
-CORE_zsymm_parsec(dague_execution_unit_t *context, dague_execution_context_t * this_task)
+CORE_zsymm_parsec(parsec_execution_stream_t *context, parsec_task_t * this_task)
 {
     MORSE_enum *side;
     MORSE_enum *uplo;
@@ -40,7 +40,7 @@ CORE_zsymm_parsec(dague_execution_unit_t *context, dague_execution_context_t * t
     MORSE_Complex64_t *C;
     int *LDC;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE, &side,
         UNPACK_VALUE, &uplo,
@@ -70,10 +70,10 @@ void MORSE_TASK_zsymm(const MORSE_option_t *options,
                       const MORSE_desc_t *B, int Bm, int Bn, int ldb,
                       MORSE_Complex64_t beta, const MORSE_desc_t *C, int Cm, int Cn, int ldc)
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_zsymm_parsec, "symm",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_zsymm_parsec, options->priority, "symm",
         sizeof(MORSE_enum),     &side,              VALUE,
         sizeof(MORSE_enum),     &uplo,              VALUE,
         sizeof(int),            &m,                 VALUE,
diff --git a/runtime/parsec/codelets/codelet_zsyr2k.c b/runtime/parsec/codelets/codelet_zsyr2k.c
index 160ff5e7d..a16a874e1 100644
--- a/runtime/parsec/codelets/codelet_zsyr2k.c
+++ b/runtime/parsec/codelets/codelet_zsyr2k.c
@@ -25,7 +25,7 @@
 #include "coreblas/coreblas_z.h"
 
 static int
-CORE_zsyr2k_parsec(dague_execution_unit_t *context, dague_execution_context_t *this_task)
+CORE_zsyr2k_parsec(parsec_execution_stream_t *context, parsec_task_t *this_task)
 {
     MORSE_enum *uplo;
     MORSE_enum *trans;
@@ -40,7 +40,7 @@ CORE_zsyr2k_parsec(dague_execution_unit_t *context, dague_execution_context_t *t
     MORSE_Complex64_t *C;
     int *ldc;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE, &uplo,
         UNPACK_VALUE, &trans,
@@ -70,21 +70,21 @@ void MORSE_TASK_zsyr2k(const MORSE_option_t *options,
                        const MORSE_desc_t *B, int Bm, int Bn, int ldb,
                        MORSE_Complex64_t beta, const MORSE_desc_t *C, int Cm, int Cn, int ldc)
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_zsyr2k_parsec, "syr2k",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_zsyr2k_parsec, options->priority, "syr2k",
         sizeof(MORSE_enum),     &uplo,                  VALUE,
         sizeof(MORSE_enum),     &trans,                 VALUE,
         sizeof(int),            &n,                     VALUE,
         sizeof(int),            &k,                     VALUE,
         sizeof(MORSE_Complex64_t), &alpha,              VALUE,
-        PASSED_BY_REF,          RTBLKADDR( A, MORSE_Complex64_t, Am, An ),     INPUT | REGION_FULL,
+        PASSED_BY_REF,          RTBLKADDR( A, MORSE_Complex64_t, Am, An ),     INPUT | morse_parsec_get_arena_index(A),
         sizeof(int),            &lda,                   VALUE,
-        PASSED_BY_REF,          RTBLKADDR( B, MORSE_Complex64_t, Bm, Bn ),     INPUT | REGION_FULL,
+        PASSED_BY_REF,          RTBLKADDR( B, MORSE_Complex64_t, Bm, Bn ),     INPUT | morse_parsec_get_arena_index(B),
         sizeof(int),            &ldb,                   VALUE,
         sizeof(MORSE_Complex64_t), &beta,               VALUE,
-        PASSED_BY_REF,          RTBLKADDR( C, MORSE_Complex64_t, Cm, Cn ),     INOUT | REGION_FULL,
+        PASSED_BY_REF,          RTBLKADDR( C, MORSE_Complex64_t, Cm, Cn ),     INOUT | morse_parsec_get_arena_index(C) | AFFINITY,
         sizeof(int),            &ldc,                   VALUE,
         0);
 }
diff --git a/runtime/parsec/codelets/codelet_zsyrk.c b/runtime/parsec/codelets/codelet_zsyrk.c
index 82baa3b13..28911f3c3 100644
--- a/runtime/parsec/codelets/codelet_zsyrk.c
+++ b/runtime/parsec/codelets/codelet_zsyrk.c
@@ -25,7 +25,7 @@
 #include "coreblas/coreblas_z.h"
 
 static int
-CORE_zsyrk_parsec(dague_execution_unit_t *context, dague_execution_context_t *this_task)
+CORE_zsyrk_parsec(parsec_execution_stream_t *context, parsec_task_t *this_task)
 {
     MORSE_enum *uplo;
     MORSE_enum *trans;
@@ -38,7 +38,7 @@ CORE_zsyrk_parsec(dague_execution_unit_t *context, dague_execution_context_t *th
     MORSE_Complex64_t *C;
     int *ldc;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE, &uplo,
         UNPACK_VALUE, &trans,
@@ -64,19 +64,19 @@ void MORSE_TASK_zsyrk(const MORSE_option_t *options,
                       MORSE_Complex64_t alpha, const MORSE_desc_t *A, int Am, int An, int lda,
                       MORSE_Complex64_t beta, const MORSE_desc_t *C, int Cm, int Cn, int ldc)
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_zsyrk_parsec, "syrk",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_zsyrk_parsec, options->priority, "syrk",
         sizeof(MORSE_enum),    &uplo,                              VALUE,
         sizeof(MORSE_enum),    &trans,                             VALUE,
         sizeof(int),           &n,                                 VALUE,
         sizeof(int),           &k,                                 VALUE,
         sizeof(MORSE_Complex64_t),           &alpha,               VALUE,
-        PASSED_BY_REF,         RTBLKADDR( A, MORSE_Complex64_t, Am, An ),     INPUT | REGION_FULL,
+        PASSED_BY_REF,         RTBLKADDR( A, MORSE_Complex64_t, Am, An ),     INPUT | morse_parsec_get_arena_index(A),
         sizeof(int),           &lda,                               VALUE,
         sizeof(MORSE_Complex64_t),           &beta,                VALUE,
-        PASSED_BY_REF,         RTBLKADDR( C, MORSE_Complex64_t, Cm, Cn ),     INOUT | REGION_FULL,
+        PASSED_BY_REF,         RTBLKADDR( C, MORSE_Complex64_t, Cm, Cn ),     INOUT | morse_parsec_get_arena_index(C) | AFFINITY,
         sizeof(int),           &ldc,                               VALUE,
         0);
 }
diff --git a/runtime/parsec/codelets/codelet_zsyssq.c b/runtime/parsec/codelets/codelet_zsyssq.c
index 307268caa..7e069a2f7 100644
--- a/runtime/parsec/codelets/codelet_zsyssq.c
+++ b/runtime/parsec/codelets/codelet_zsyssq.c
@@ -25,7 +25,7 @@
 #include "coreblas/coreblas_z.h"
 
 static int
-CORE_zsyssq_parsec(dague_execution_unit_t *context, dague_execution_context_t *this_task)
+CORE_zsyssq_parsec(parsec_execution_stream_t *context, parsec_task_t *this_task)
 {
     MORSE_enum *uplo;
     int *n;
@@ -33,7 +33,7 @@ CORE_zsyssq_parsec(dague_execution_unit_t *context, dague_execution_context_t *t
     int *lda;
     double *SCALESUMSQ;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE, &uplo,
         UNPACK_VALUE, &n,
@@ -51,10 +51,10 @@ void MORSE_TASK_zsyssq( const MORSE_option_t *options,
                         const MORSE_desc_t *A, int Am, int An, int lda,
                         const MORSE_desc_t *SCALESUMSQ, int SCALESUMSQm, int SCALESUMSQn )
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_zsyssq_parsec, "syssq",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_zsyssq_parsec, options->priority, "syssq",
         sizeof(MORSE_enum),     &uplo,                  VALUE,
         sizeof(int),            &n,                     VALUE,
         PASSED_BY_REF,          RTBLKADDR( A, MORSE_Complex64_t, Am, An ),                               INPUT | REGION_FULL,
diff --git a/runtime/parsec/codelets/codelet_zsytrf_nopiv.c b/runtime/parsec/codelets/codelet_zsytrf_nopiv.c
index 08c8894ae..1c1e462ef 100644
--- a/runtime/parsec/codelets/codelet_zsytrf_nopiv.c
+++ b/runtime/parsec/codelets/codelet_zsytrf_nopiv.c
@@ -25,7 +25,7 @@
 #include "coreblas/coreblas_z.h"
 
 static int
-CORE_zsytrf_nopiv_parsec(dague_execution_unit_t *context, dague_execution_context_t *this_task)
+CORE_zsytrf_nopiv_parsec(parsec_execution_stream_t *context, parsec_task_t *this_task)
 {
     MORSE_enum *uplo;
     int *n;
@@ -34,7 +34,7 @@ CORE_zsytrf_nopiv_parsec(dague_execution_unit_t *context, dague_execution_contex
     int *iinfo;
     int info;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE, &uplo,
         UNPACK_VALUE, &n,
@@ -52,10 +52,10 @@ void MORSE_TASK_zsytrf_nopiv(const MORSE_option_t *options,
                              const MORSE_desc_t *A, int Am, int An, int lda,
                              int iinfo)
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_zsytrf_nopiv_parsec, "sytrf_nopiv",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_zsytrf_nopiv_parsec, options->priority, "sytrf_nopiv",
         sizeof(MORSE_enum),              &uplo,                VALUE,
         sizeof(int),                     &n,                   VALUE,
         PASSED_BY_REF,         RTBLKADDR( A, MORSE_Complex64_t, Am, An ),     INOUT | REGION_FULL,
diff --git a/runtime/parsec/codelets/codelet_ztile_zero.c b/runtime/parsec/codelets/codelet_ztile_zero.c
index 5bb42168c..7d38207c6 100644
--- a/runtime/parsec/codelets/codelet_ztile_zero.c
+++ b/runtime/parsec/codelets/codelet_ztile_zero.c
@@ -25,7 +25,7 @@
 #include "coreblas/coreblas_z.h"
 
 static int
-CORE_ztile_zero_parsec(dague_execution_unit_t *context, dague_execution_context_t *this_task)
+CORE_ztile_zero_parsec(parsec_execution_stream_t *context, parsec_task_t *this_task)
 {
     int *X1;
     int *X2;
@@ -35,7 +35,7 @@ CORE_ztile_zero_parsec(dague_execution_unit_t *context, dague_execution_context_
     int *lda;
     int x, y;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE, &X1,
         UNPACK_VALUE, &X2,
@@ -55,10 +55,10 @@ void MORSE_TASK_ztile_zero(const const MORSE_option_t *options,
                            int X1, int X2, int Y1, int Y2,
                            const MORSE_desc_t *A, int Am, int An, int lda)
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_ztile_zero_parsec, "tile zero",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_ztile_zero_parsec, options->priority, "tile zero",
         sizeof(int),       &X1,                       VALUE,
         sizeof(int),       &X2,                       VALUE,
         sizeof(int),       &Y1,                       VALUE,
diff --git a/runtime/parsec/codelets/codelet_ztpmqrt.c b/runtime/parsec/codelets/codelet_ztpmqrt.c
index 4b9c869ba..3dc5ca5e6 100644
--- a/runtime/parsec/codelets/codelet_ztpmqrt.c
+++ b/runtime/parsec/codelets/codelet_ztpmqrt.c
@@ -27,8 +27,8 @@
 #include "coreblas/coreblas_z.h"
 
 static int
-CORE_ztpmqrt_parsec(dague_execution_unit_t    *context,
-                    dague_execution_context_t *this_task)
+CORE_ztpmqrt_parsec(parsec_execution_stream_t    *context,
+                    parsec_task_t *this_task)
 {
     MORSE_enum *side;
     MORSE_enum *trans;
@@ -47,7 +47,7 @@ CORE_ztpmqrt_parsec(dague_execution_unit_t    *context,
     int *ldb;
     MORSE_Complex64_t *WORK;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE,   &side,
         UNPACK_VALUE,   &trans,
@@ -80,10 +80,10 @@ void MORSE_TASK_ztpmqrt( const MORSE_option_t *options,
                          const MORSE_desc_t *A, int Am, int An, int lda,
                          const MORSE_desc_t *B, int Bm, int Bn, int ldb )
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_ztpmqrt_parsec, "tpmqrt",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_ztpmqrt_parsec, options->priority, "tpmqrt",
         sizeof(MORSE_enum), &side,  VALUE,
         sizeof(MORSE_enum), &trans, VALUE,
         sizeof(int),        &M,     VALUE,
diff --git a/runtime/parsec/codelets/codelet_ztpqrt.c b/runtime/parsec/codelets/codelet_ztpqrt.c
index e86683354..1610f02a0 100644
--- a/runtime/parsec/codelets/codelet_ztpqrt.c
+++ b/runtime/parsec/codelets/codelet_ztpqrt.c
@@ -27,8 +27,8 @@
 #include "coreblas/coreblas_z.h"
 
 static int
-CORE_ztpqrt_parsec(dague_execution_unit_t    *context,
-                   dague_execution_context_t *this_task)
+CORE_ztpqrt_parsec(parsec_execution_stream_t    *context,
+                   parsec_task_t *this_task)
 {
     int *M;
     int *N;
@@ -42,7 +42,7 @@ CORE_ztpqrt_parsec(dague_execution_unit_t    *context,
     int *ldt;
     MORSE_Complex64_t *WORK;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE,   &M,
         UNPACK_VALUE,   &N,
@@ -68,15 +68,15 @@ void MORSE_TASK_ztpqrt( const MORSE_option_t *options,
                          const MORSE_desc_t *B, int Bm, int Bn, int ldb,
                          const MORSE_desc_t *T, int Tm, int Tn, int ldt )
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_ztpqrt_parsec, "tpqrt",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_ztpqrt_parsec, options->priority, "tpqrt",
         sizeof(int),   &M,   VALUE,
         sizeof(int),   &N,   VALUE,
         sizeof(int),   &L,   VALUE,
         sizeof(int),   &ib,  VALUE,
-        PASSED_BY_REF,  RTBLKADDR( A, MORSE_Complex64_t, Am, An ), INOUT | REGION_U | REGION_D,
+        PASSED_BY_REF,  RTBLKADDR( A, MORSE_Complex64_t, Am, An ), INOUT | REGION_FULL,
         sizeof(int),   &lda, VALUE,
         PASSED_BY_REF,  RTBLKADDR( B, MORSE_Complex64_t, Bm, Bn ), INOUT | REGION_FULL,
         sizeof(int),   &ldb, VALUE,
diff --git a/runtime/parsec/codelets/codelet_ztradd.c b/runtime/parsec/codelets/codelet_ztradd.c
index 7490dfbf9..fc747e8d8 100644
--- a/runtime/parsec/codelets/codelet_ztradd.c
+++ b/runtime/parsec/codelets/codelet_ztradd.c
@@ -29,7 +29,7 @@
 #include "coreblas/coreblas_z.h"
 
 static int
-CORE_ztradd_parsec(dague_execution_unit_t *context, dague_execution_context_t *this_task)
+CORE_ztradd_parsec(parsec_execution_stream_t *context, parsec_task_t *this_task)
 {
     MORSE_enum *uplo;
     MORSE_enum *trans;
@@ -42,7 +42,7 @@ CORE_ztradd_parsec(dague_execution_unit_t *context, dague_execution_context_t *t
     MORSE_Complex64_t *B;
     int *LDB;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE, &uplo,
         UNPACK_VALUE, &trans,
@@ -125,10 +125,10 @@ void MORSE_TASK_ztradd(const MORSE_option_t *options,
                        MORSE_Complex64_t alpha, const MORSE_desc_t *A, int Am, int An, int lda,
                        MORSE_Complex64_t beta,  const MORSE_desc_t *B, int Bm, int Bn, int ldb)
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_ztradd_parsec, "tradd",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_ztradd_parsec, options->priority, "tradd",
         sizeof(MORSE_enum),        &uplo,  VALUE,
         sizeof(MORSE_enum),        &trans, VALUE,
         sizeof(int),               &m,     VALUE,
diff --git a/runtime/parsec/codelets/codelet_ztrasm.c b/runtime/parsec/codelets/codelet_ztrasm.c
index 66327f971..e16ef765f 100644
--- a/runtime/parsec/codelets/codelet_ztrasm.c
+++ b/runtime/parsec/codelets/codelet_ztrasm.c
@@ -25,7 +25,7 @@
 #include "coreblas/coreblas_z.h"
 
 static int
-CORE_ztrasm_parsec(dague_execution_unit_t *context, dague_execution_context_t *this_task)
+CORE_ztrasm_parsec(parsec_execution_stream_t *context, parsec_task_t *this_task)
 {
     MORSE_enum *storev;
     MORSE_enum *uplo;
@@ -36,7 +36,7 @@ CORE_ztrasm_parsec(dague_execution_unit_t *context, dague_execution_context_t *t
     int *lda;
     double *work;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE, &storev,
         UNPACK_VALUE, &uplo,
@@ -57,10 +57,10 @@ void MORSE_TASK_ztrasm(const MORSE_option_t *options,
                        const MORSE_desc_t *A, int Am, int An, int lda,
                        const MORSE_desc_t *B, int Bm, int Bn)
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_ztrasm_parsec, "trasm",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_ztrasm_parsec, options->priority, "trasm",
         sizeof(MORSE_enum),     &storev,                VALUE,
         sizeof(MORSE_enum),     &uplo,                  VALUE,
         sizeof(MORSE_enum),     &diag,                  VALUE,
diff --git a/runtime/parsec/codelets/codelet_ztrmm.c b/runtime/parsec/codelets/codelet_ztrmm.c
index baae850c1..7c432a6c3 100644
--- a/runtime/parsec/codelets/codelet_ztrmm.c
+++ b/runtime/parsec/codelets/codelet_ztrmm.c
@@ -25,7 +25,7 @@
 #include "coreblas/coreblas_z.h"
 
 static int
-CORE_ztrmm_parsec(dague_execution_unit_t *context, dague_execution_context_t *this_task)
+CORE_ztrmm_parsec(parsec_execution_stream_t *context, parsec_task_t *this_task)
 {
     MORSE_enum *side;
     MORSE_enum *uplo;
@@ -39,7 +39,7 @@ CORE_ztrmm_parsec(dague_execution_unit_t *context, dague_execution_context_t *th
     MORSE_Complex64_t *B;
     int *LDB;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE, &side,
         UNPACK_VALUE, &uplo,
@@ -68,10 +68,10 @@ void MORSE_TASK_ztrmm(const MORSE_option_t *options,
                       MORSE_Complex64_t alpha, const MORSE_desc_t *A, int Am, int An, int lda,
                       const MORSE_desc_t *B, int Bm, int Bn, int ldb)
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_ztrmm_parsec, "trmm",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_ztrmm_parsec, options->priority, "trmm",
         sizeof(MORSE_enum),     &side,                  VALUE,
         sizeof(MORSE_enum),     &uplo,                  VALUE,
         sizeof(MORSE_enum),     &transA,                VALUE,
diff --git a/runtime/parsec/codelets/codelet_ztrsm.c b/runtime/parsec/codelets/codelet_ztrsm.c
index b22d0184e..fb650e6c2 100644
--- a/runtime/parsec/codelets/codelet_ztrsm.c
+++ b/runtime/parsec/codelets/codelet_ztrsm.c
@@ -25,7 +25,7 @@
 #include "coreblas/coreblas_z.h"
 
 static int
-CORE_ztrsm_parsec(dague_execution_unit_t *context, dague_execution_context_t *this_task)
+CORE_ztrsm_parsec(parsec_execution_stream_t *context, parsec_task_t *this_task)
 {
     MORSE_enum *side, *uplo, *trans, *diag;
     int  *tempmm, *nb, *ldak, *ldam;
@@ -33,7 +33,7 @@ CORE_ztrsm_parsec(dague_execution_unit_t *context, dague_execution_context_t *th
     MORSE_Complex64_t *T;
     MORSE_Complex64_t *C;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE, &side,
         UNPACK_VALUE, &uplo,
@@ -60,10 +60,10 @@ void MORSE_TASK_ztrsm(const MORSE_option_t *options,
                       MORSE_Complex64_t alpha, const MORSE_desc_t *A, int Am, int An, int lda,
                       const MORSE_desc_t *B, int Bm, int Bn, int ldb)
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_ztrsm_parsec, "Trsm",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_ztrsm_parsec, options->priority, "Trsm",
         sizeof(MORSE_enum),    &side,                     VALUE,
         sizeof(MORSE_enum),    &uplo,                     VALUE,
         sizeof(MORSE_enum),    &transA,                   VALUE,
@@ -71,9 +71,9 @@ void MORSE_TASK_ztrsm(const MORSE_option_t *options,
         sizeof(int),           &m,                        VALUE,
         sizeof(int),           &n,                        VALUE,
         sizeof(MORSE_Complex64_t),           &alpha,      VALUE,
-        PASSED_BY_REF,     RTBLKADDR( A, MORSE_Complex64_t, Am, An ),     INPUT | REGION_FULL,
+        PASSED_BY_REF,     RTBLKADDR( A, MORSE_Complex64_t, Am, An ),     INPUT | morse_parsec_get_arena_index(A),
         sizeof(int),           &lda,                      VALUE,
-        PASSED_BY_REF,     RTBLKADDR( B, MORSE_Complex64_t, Bm, Bn ),     INOUT | REGION_FULL,
+        PASSED_BY_REF,     RTBLKADDR( B, MORSE_Complex64_t, Bm, Bn ),     INOUT | morse_parsec_get_arena_index(A) | AFFINITY,
         sizeof(int),           &ldb,                      VALUE,
         0);
 }
diff --git a/runtime/parsec/codelets/codelet_ztrssq.c b/runtime/parsec/codelets/codelet_ztrssq.c
index 5ec51a99d..0f88de733 100644
--- a/runtime/parsec/codelets/codelet_ztrssq.c
+++ b/runtime/parsec/codelets/codelet_ztrssq.c
@@ -25,7 +25,7 @@
 #include "coreblas/coreblas_z.h"
 
 static int
-CORE_ztrssq_parsec(dague_execution_unit_t *context, dague_execution_context_t *this_task)
+CORE_ztrssq_parsec(parsec_execution_stream_t *context, parsec_task_t *this_task)
 {
     MORSE_enum *uplo;
     MORSE_enum *diag;
@@ -35,7 +35,7 @@ CORE_ztrssq_parsec(dague_execution_unit_t *context, dague_execution_context_t *t
     int *lda;
     double *SCALESUMSQ;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE, &uplo,
         UNPACK_VALUE, &diag,
@@ -56,10 +56,10 @@ void MORSE_TASK_ztrssq( const MORSE_option_t *options,
                         const MORSE_desc_t *A, int Am, int An, int lda,
                         const MORSE_desc_t *SCALESUMSQ, int SCALESUMSQm, int SCALESUMSQn )
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_ztrssq_parsec, "trssq",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_ztrssq_parsec, options->priority, "trssq",
         sizeof(MORSE_enum),     &uplo,                  VALUE,
         sizeof(MORSE_enum),     &diag,                  VALUE,
         sizeof(int),            &m,                     VALUE,
diff --git a/runtime/parsec/codelets/codelet_ztrtri.c b/runtime/parsec/codelets/codelet_ztrtri.c
index 29aeb28f5..bb250e669 100644
--- a/runtime/parsec/codelets/codelet_ztrtri.c
+++ b/runtime/parsec/codelets/codelet_ztrtri.c
@@ -25,7 +25,7 @@
 #include "coreblas/coreblas_z.h"
 
 static int
-CORE_ztrtri_parsec(dague_execution_unit_t *context, dague_execution_context_t *this_task)
+CORE_ztrtri_parsec(parsec_execution_stream_t *context, parsec_task_t *this_task)
 {
     MORSE_enum *uplo;
     MORSE_enum *diag;
@@ -35,7 +35,7 @@ CORE_ztrtri_parsec(dague_execution_unit_t *context, dague_execution_context_t *t
     int *iinfo;
     int info;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE, &uplo,
         UNPACK_VALUE, &diag,
@@ -55,10 +55,10 @@ void MORSE_TASK_ztrtri(const MORSE_option_t *options,
                        const MORSE_desc_t *A, int Am, int An, int lda,
                        int iinfo)
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_ztrtri_parsec, "trtri",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_ztrtri_parsec, options->priority, "trtri",
         sizeof(MORSE_enum),         &uplo,                  VALUE,
         sizeof(MORSE_enum),         &diag,                  VALUE,
         sizeof(int),                &n,                     VALUE,
diff --git a/runtime/parsec/codelets/codelet_ztslqt.c b/runtime/parsec/codelets/codelet_ztslqt.c
index 8f01e5ca6..8b1783037 100644
--- a/runtime/parsec/codelets/codelet_ztslqt.c
+++ b/runtime/parsec/codelets/codelet_ztslqt.c
@@ -25,7 +25,7 @@
 #include "coreblas/coreblas_z.h"
 
 static int
-CORE_ztslqt_parsec(dague_execution_unit_t *context, dague_execution_context_t *this_task)
+CORE_ztslqt_parsec(parsec_execution_stream_t *context, parsec_task_t *this_task)
 {
     int *m;
     int *n;
@@ -39,7 +39,7 @@ CORE_ztslqt_parsec(dague_execution_unit_t *context, dague_execution_context_t *t
     MORSE_Complex64_t *TAU;
     MORSE_Complex64_t *WORK;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE, &m,
         UNPACK_VALUE, &n,
@@ -64,10 +64,10 @@ void MORSE_TASK_ztslqt(const MORSE_option_t *options,
                        const MORSE_desc_t *A2, int A2m, int A2n, int lda2,
                        const MORSE_desc_t *T, int Tm, int Tn, int ldt)
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_ztslqt_parsec, "tslqt",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_ztslqt_parsec, options->priority, "tslqt",
         sizeof(int),            &m,                     VALUE,
         sizeof(int),            &n,                     VALUE,
         sizeof(int),            &ib,                    VALUE,
diff --git a/runtime/parsec/codelets/codelet_ztsmlq.c b/runtime/parsec/codelets/codelet_ztsmlq.c
index 48e248815..183829a2e 100644
--- a/runtime/parsec/codelets/codelet_ztsmlq.c
+++ b/runtime/parsec/codelets/codelet_ztsmlq.c
@@ -25,7 +25,7 @@
 #include "coreblas/coreblas_z.h"
 
 static int
-CORE_ztsmlq_parsec(dague_execution_unit_t *context, dague_execution_context_t *this_task)
+CORE_ztsmlq_parsec(parsec_execution_stream_t *context, parsec_task_t *this_task)
 {
     MORSE_enum *side;
     MORSE_enum *trans;
@@ -46,7 +46,7 @@ CORE_ztsmlq_parsec(dague_execution_unit_t *context, dague_execution_context_t *t
     MORSE_Complex64_t *WORK;
     int *ldwork;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE,   &side,
         UNPACK_VALUE,   &trans,
@@ -83,10 +83,10 @@ void MORSE_TASK_ztsmlq(const MORSE_option_t *options,
 {
     int ldwork = side == MorseLeft ? ib : nb;
 
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_ztsmlq_parsec, "tsmlq",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_ztsmlq_parsec, options->priority, "tsmlq",
         sizeof(MORSE_enum),                &side,       VALUE,
         sizeof(MORSE_enum),                &trans,      VALUE,
         sizeof(int),                        &m1,        VALUE,
diff --git a/runtime/parsec/codelets/codelet_ztsmlq_hetra1.c b/runtime/parsec/codelets/codelet_ztsmlq_hetra1.c
index 022a827d3..b3141cb5f 100644
--- a/runtime/parsec/codelets/codelet_ztsmlq_hetra1.c
+++ b/runtime/parsec/codelets/codelet_ztsmlq_hetra1.c
@@ -30,8 +30,8 @@
 #include "coreblas/coreblas_z.h"
 
 static inline int
-CORE_ztsmlq_hetra1_parsec(dague_execution_unit_t    *context,
-                          dague_execution_context_t *this_task)
+CORE_ztsmlq_hetra1_parsec(parsec_execution_stream_t    *context,
+                          parsec_task_t *this_task)
 {
     MORSE_enum *side;
     MORSE_enum *trans;
@@ -52,7 +52,7 @@ CORE_ztsmlq_hetra1_parsec(dague_execution_unit_t    *context,
     MORSE_Complex64_t *WORK;
     int *ldwork;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE,   &side,
         UNPACK_VALUE,   &trans,
@@ -87,11 +87,11 @@ void MORSE_TASK_ztsmlq_hetra1(const MORSE_option_t *options,
                               const MORSE_desc_t *V, int Vm, int Vn, int ldv,
                               const MORSE_desc_t *T, int Tm, int Tn, int ldt)
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
     int ldwork = side == MorseLeft ? ib : nb;
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_ztsmlq_hetra1_parsec, "tsmlq_hetra1",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_ztsmlq_hetra1_parsec, options->priority, "tsmlq_hetra1",
         sizeof(MORSE_enum), &side,   VALUE,
         sizeof(MORSE_enum), &trans,  VALUE,
         sizeof(int),        &m1,     VALUE,
@@ -100,7 +100,7 @@ void MORSE_TASK_ztsmlq_hetra1(const MORSE_option_t *options,
         sizeof(int),        &n2,     VALUE,
         sizeof(int),        &k,      VALUE,
         sizeof(int),        &ib,     VALUE,
-        PASSED_BY_REF,       RTBLKADDR(A1, MORSE_Complex64_t, A1m, A1n), INOUT | REGION_U | REGION_D,
+        PASSED_BY_REF,       RTBLKADDR(A1, MORSE_Complex64_t, A1m, A1n), INOUT | REGION_FULL,
         sizeof(int),        &lda1,   VALUE,
         PASSED_BY_REF,       RTBLKADDR(A2, MORSE_Complex64_t, A2m, A2n), INOUT | REGION_FULL,
         sizeof(int),        &lda2,   VALUE,
diff --git a/runtime/parsec/codelets/codelet_ztsmqr.c b/runtime/parsec/codelets/codelet_ztsmqr.c
index 93946fbc3..d0f69ceeb 100644
--- a/runtime/parsec/codelets/codelet_ztsmqr.c
+++ b/runtime/parsec/codelets/codelet_ztsmqr.c
@@ -25,7 +25,7 @@
 #include "coreblas/coreblas_z.h"
 
 static int
-CORE_ztsmqr_parsec(dague_execution_unit_t *context, dague_execution_context_t *this_task)
+CORE_ztsmqr_parsec(parsec_execution_stream_t *context, parsec_task_t *this_task)
 {
     MORSE_enum *side;
     MORSE_enum *trans;
@@ -46,7 +46,7 @@ CORE_ztsmqr_parsec(dague_execution_unit_t *context, dague_execution_context_t *t
     MORSE_Complex64_t *WORK;
     int *ldwork;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE,   &side,
         UNPACK_VALUE,   &trans,
@@ -83,10 +83,10 @@ void MORSE_TASK_ztsmqr(const MORSE_option_t *options,
 {
     int ldwork = side == MorseLeft ? ib : nb;
 
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_ztsmqr_parsec, "tsmqr",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_ztsmqr_parsec, options->priority, "tsmqr",
         sizeof(MORSE_enum),    &side,                              VALUE,
         sizeof(MORSE_enum),    &trans,                             VALUE,
         sizeof(int),           &m1,                                VALUE,
diff --git a/runtime/parsec/codelets/codelet_ztsmqr_hetra1.c b/runtime/parsec/codelets/codelet_ztsmqr_hetra1.c
index 3a300a38b..5c521c881 100644
--- a/runtime/parsec/codelets/codelet_ztsmqr_hetra1.c
+++ b/runtime/parsec/codelets/codelet_ztsmqr_hetra1.c
@@ -30,8 +30,8 @@
 #include "coreblas/coreblas_z.h"
 
 static inline int
-CORE_ztsmqr_hetra1_parsec(dague_execution_unit_t    *context,
-                          dague_execution_context_t *this_task)
+CORE_ztsmqr_hetra1_parsec(parsec_execution_stream_t    *context,
+                          parsec_task_t *this_task)
 {
     MORSE_enum *side;
     MORSE_enum *trans;
@@ -52,7 +52,7 @@ CORE_ztsmqr_hetra1_parsec(dague_execution_unit_t    *context,
     MORSE_Complex64_t *WORK;
     int *ldwork;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE,   &side,
         UNPACK_VALUE,   &trans,
@@ -87,11 +87,11 @@ void MORSE_TASK_ztsmqr_hetra1(const MORSE_option_t *options,
                               const MORSE_desc_t *V, int Vm, int Vn, int ldv,
                               const MORSE_desc_t *T, int Tm, int Tn, int ldt)
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
     int ldwork = side == MorseLeft ? ib : nb;
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_ztsmqr_hetra1_parsec, "tsmqr_hetra1",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_ztsmqr_hetra1_parsec, options->priority, "tsmqr_hetra1",
         sizeof(MORSE_enum), &side,   VALUE,
         sizeof(MORSE_enum), &trans,  VALUE,
         sizeof(int),        &m1,     VALUE,
@@ -100,7 +100,7 @@ void MORSE_TASK_ztsmqr_hetra1(const MORSE_option_t *options,
         sizeof(int),        &n2,     VALUE,
         sizeof(int),        &k,      VALUE,
         sizeof(int),        &ib,     VALUE,
-        PASSED_BY_REF,       RTBLKADDR(A1, MORSE_Complex64_t, A1m, A1n), INOUT | REGION_L | REGION_D,
+        PASSED_BY_REF,       RTBLKADDR(A1, MORSE_Complex64_t, A1m, A1n), INOUT | REGION_FULL,
         sizeof(int),        &lda1,   VALUE,
         PASSED_BY_REF,       RTBLKADDR(A2, MORSE_Complex64_t, A2m, A2n), INOUT | REGION_FULL,
         sizeof(int),        &lda2,   VALUE,
diff --git a/runtime/parsec/codelets/codelet_ztsqrt.c b/runtime/parsec/codelets/codelet_ztsqrt.c
index 8514230a6..9fbcacb20 100644
--- a/runtime/parsec/codelets/codelet_ztsqrt.c
+++ b/runtime/parsec/codelets/codelet_ztsqrt.c
@@ -25,7 +25,7 @@
 #include "coreblas/coreblas_z.h"
 
 static int
-CORE_ztsqrt_parsec(dague_execution_unit_t *context, dague_execution_context_t *this_task)
+CORE_ztsqrt_parsec(parsec_execution_stream_t *context, parsec_task_t *this_task)
 {
     int *m;
     int *n;
@@ -39,7 +39,7 @@ CORE_ztsqrt_parsec(dague_execution_unit_t *context, dague_execution_context_t *t
     MORSE_Complex64_t *TAU;
     MORSE_Complex64_t *WORK;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE, &m,
         UNPACK_VALUE, &n,
@@ -64,14 +64,14 @@ void MORSE_TASK_ztsqrt(const MORSE_option_t *options,
                        const MORSE_desc_t *A2, int A2m, int A2n, int lda2,
                        const MORSE_desc_t *T, int Tm, int Tn, int ldt)
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_ztsqrt_parsec, "tsqrt",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_ztsqrt_parsec, options->priority, "tsqrt",
         sizeof(MORSE_enum),    &m,                                 VALUE,
         sizeof(int),           &n,                                 VALUE,
         sizeof(int),           &ib,                                VALUE,
-        PASSED_BY_REF,         RTBLKADDR( A1, MORSE_Complex64_t, A1m, A1n ),     INOUT | REGION_D | REGION_U,
+        PASSED_BY_REF,         RTBLKADDR( A1, MORSE_Complex64_t, A1m, A1n ),     INOUT | REGION_FULL,
         sizeof(int),           &lda1,                              VALUE,
         PASSED_BY_REF,         RTBLKADDR( A2, MORSE_Complex64_t, A2m, A2n ),     INOUT | REGION_FULL,
         sizeof(int),           &lda2,                              VALUE,
diff --git a/runtime/parsec/codelets/codelet_ztstrf.c b/runtime/parsec/codelets/codelet_ztstrf.c
index bb13778e7..0e361875e 100644
--- a/runtime/parsec/codelets/codelet_ztstrf.c
+++ b/runtime/parsec/codelets/codelet_ztstrf.c
@@ -25,7 +25,7 @@
 #include "coreblas/coreblas_z.h"
 
 static int
-CORE_ztstrf_parsec(dague_execution_unit_t *context, dague_execution_context_t *this_task)
+CORE_ztstrf_parsec(parsec_execution_stream_t *context, parsec_task_t *this_task)
 {
     int *m;
     int *n;
@@ -45,7 +45,7 @@ CORE_ztstrf_parsec(dague_execution_unit_t *context, dague_execution_context_t *t
 
     int info;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE,   &m,
         UNPACK_VALUE,   &n,
@@ -76,10 +76,10 @@ void MORSE_TASK_ztstrf(const MORSE_option_t *options,
                        int *IPIV,
                        MORSE_bool check_info, int iinfo)
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_ztstrf_parsec, "tstrf",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_ztstrf_parsec, options->priority, "tstrf",
         sizeof(int),           &m,                                VALUE,
         sizeof(int),           &n,                                VALUE,
         sizeof(int),           &ib,                               VALUE,
diff --git a/runtime/parsec/codelets/codelet_zttlqt.c b/runtime/parsec/codelets/codelet_zttlqt.c
index 5123cb219..ba9f0c8e8 100644
--- a/runtime/parsec/codelets/codelet_zttlqt.c
+++ b/runtime/parsec/codelets/codelet_zttlqt.c
@@ -25,7 +25,7 @@
 #include "coreblas/coreblas_z.h"
 
 static int
-CORE_zttlqt_parsec(dague_execution_unit_t *context, dague_execution_context_t *this_task)
+CORE_zttlqt_parsec(parsec_execution_stream_t *context, parsec_task_t *this_task)
 {
     int *m;
     int *n;
@@ -39,7 +39,7 @@ CORE_zttlqt_parsec(dague_execution_unit_t *context, dague_execution_context_t *t
     MORSE_Complex64_t *TAU;
     MORSE_Complex64_t *WORK;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE,   &m,
         UNPACK_VALUE,   &n,
@@ -65,10 +65,10 @@ void MORSE_TASK_zttlqt(const MORSE_option_t *options,
                        const MORSE_desc_t *T, int Tm, int Tn, int ldt)
 {
 
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_zttlqt_parsec, "ttlqt",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_zttlqt_parsec, options->priority, "ttlqt",
         sizeof(int),            &m,                     VALUE,
         sizeof(int),            &n,                     VALUE,
         sizeof(int),            &ib,                    VALUE,
diff --git a/runtime/parsec/codelets/codelet_zttmlq.c b/runtime/parsec/codelets/codelet_zttmlq.c
index 3dba39bb7..bb236ae9e 100644
--- a/runtime/parsec/codelets/codelet_zttmlq.c
+++ b/runtime/parsec/codelets/codelet_zttmlq.c
@@ -25,7 +25,7 @@
 #include "coreblas/coreblas_z.h"
 
 static int
-CORE_zttmlq_parsec(dague_execution_unit_t *context, dague_execution_context_t * this_task)
+CORE_zttmlq_parsec(parsec_execution_stream_t *context, parsec_task_t * this_task)
 {
     MORSE_enum *side;
     MORSE_enum *trans;
@@ -46,7 +46,7 @@ CORE_zttmlq_parsec(dague_execution_unit_t *context, dague_execution_context_t *
     MORSE_Complex64_t *WORK;
     int *ldwork;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE,   &side,
         UNPACK_VALUE,   &trans,
@@ -83,10 +83,10 @@ void MORSE_TASK_zttmlq(const MORSE_option_t *options,
 {
     int ldwork = side == MorseLeft ? ib : nb;
 
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_zttmlq_parsec, "ttmlq",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_zttmlq_parsec, options->priority, "ttmlq",
         sizeof(MORSE_enum),     &side,                      VALUE,
         sizeof(MORSE_enum),     &trans,                     VALUE,
         sizeof(int),            &m1,                        VALUE,
diff --git a/runtime/parsec/codelets/codelet_zttmqr.c b/runtime/parsec/codelets/codelet_zttmqr.c
index b2e2cf45e..c96d479ba 100644
--- a/runtime/parsec/codelets/codelet_zttmqr.c
+++ b/runtime/parsec/codelets/codelet_zttmqr.c
@@ -25,7 +25,7 @@
 #include "coreblas/coreblas_z.h"
 
 static int
-CORE_zttmqr_parsec(dague_execution_unit_t *context, dague_execution_context_t * this_task)
+CORE_zttmqr_parsec(parsec_execution_stream_t *context, parsec_task_t * this_task)
 {
     MORSE_enum *side;
     MORSE_enum *trans;
@@ -46,7 +46,7 @@ CORE_zttmqr_parsec(dague_execution_unit_t *context, dague_execution_context_t *
     MORSE_Complex64_t *WORK;
     int *ldwork;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE,   &side,
         UNPACK_VALUE,   &trans,
@@ -84,10 +84,10 @@ void MORSE_TASK_zttmqr(const MORSE_option_t *options,
 {
     int ldwork = side == MorseLeft ? ib : nb;
 
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_zttmqr_parsec, "ttmqr",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_zttmqr_parsec, options->priority, "ttmqr",
         sizeof(MORSE_enum),    &side,                             VALUE,
         sizeof(MORSE_enum),    &trans,                            VALUE,
         sizeof(int),           &m1,                               VALUE,
diff --git a/runtime/parsec/codelets/codelet_zttqrt.c b/runtime/parsec/codelets/codelet_zttqrt.c
index a2cbf8749..7a5b1ea0f 100644
--- a/runtime/parsec/codelets/codelet_zttqrt.c
+++ b/runtime/parsec/codelets/codelet_zttqrt.c
@@ -25,7 +25,7 @@
 #include "coreblas/coreblas_z.h"
 
 static int
-CORE_zttqrt_parsec(dague_execution_unit_t *context, dague_execution_context_t * this_task)
+CORE_zttqrt_parsec(parsec_execution_stream_t *context, parsec_task_t * this_task)
 {
     int *m;
     int *n;
@@ -39,7 +39,7 @@ CORE_zttqrt_parsec(dague_execution_unit_t *context, dague_execution_context_t *
     MORSE_Complex64_t *TAU;
     MORSE_Complex64_t *WORK;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE,   &m,
         UNPACK_VALUE,   &n,
@@ -64,10 +64,10 @@ void MORSE_TASK_zttqrt(const MORSE_option_t *options,
                        const MORSE_desc_t *A2, int A2m, int A2n, int lda2,
                        const MORSE_desc_t *T, int Tm, int Tn, int ldt)
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_zttqrt_parsec, "ttqrt",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_zttqrt_parsec, options->priority,  "ttqrt",
         sizeof(MORSE_enum),    &m,                                 VALUE,
         sizeof(int),           &n,                                 VALUE,
         sizeof(int),           &ib,                                VALUE,
diff --git a/runtime/parsec/codelets/codelet_zunmlq.c b/runtime/parsec/codelets/codelet_zunmlq.c
index b48855d20..916db29fe 100644
--- a/runtime/parsec/codelets/codelet_zunmlq.c
+++ b/runtime/parsec/codelets/codelet_zunmlq.c
@@ -25,7 +25,7 @@
 #include "coreblas/coreblas_z.h"
 
 static int
-CORE_zunmlq_parsec(dague_execution_unit_t *context, dague_execution_context_t *this_task)
+CORE_zunmlq_parsec(parsec_execution_stream_t *context, parsec_task_t *this_task)
 {
     MORSE_enum *side;
     MORSE_enum *trans;
@@ -42,7 +42,7 @@ CORE_zunmlq_parsec(dague_execution_unit_t *context, dague_execution_context_t *t
     MORSE_Complex64_t *WORK;
     int *ldwork;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE,   &side,
         UNPACK_VALUE,   &trans,
@@ -72,10 +72,10 @@ void MORSE_TASK_zunmlq(const MORSE_option_t *options,
                        const MORSE_desc_t *T, int Tm, int Tn, int ldt,
                        const MORSE_desc_t *C, int Cm, int Cn, int ldc)
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_zunmlq_parsec, "unmlq",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_zunmlq_parsec, options->priority, "unmlq",
         sizeof(MORSE_enum),                 &side,              VALUE,
         sizeof(MORSE_enum),                 &trans,             VALUE,
         sizeof(int),                        &m,                 VALUE,
diff --git a/runtime/parsec/codelets/codelet_zunmqr.c b/runtime/parsec/codelets/codelet_zunmqr.c
index f0cbf7ce4..ab2599d0a 100644
--- a/runtime/parsec/codelets/codelet_zunmqr.c
+++ b/runtime/parsec/codelets/codelet_zunmqr.c
@@ -25,7 +25,7 @@
 #include "coreblas/coreblas_z.h"
 
 static int
-CORE_zunmqr_parsec(dague_execution_unit_t *context, dague_execution_context_t *this_task)
+CORE_zunmqr_parsec(parsec_execution_stream_t *context, parsec_task_t *this_task)
 {
     MORSE_enum *side;
     MORSE_enum *trans;
@@ -42,7 +42,7 @@ CORE_zunmqr_parsec(dague_execution_unit_t *context, dague_execution_context_t *t
     MORSE_Complex64_t *WORK;
     int *ldwork;
 
-    dague_dtd_unpack_args(
+    parsec_dtd_unpack_args(
         this_task,
         UNPACK_VALUE,   &side,
         UNPACK_VALUE,   &trans,
@@ -72,17 +72,17 @@ void MORSE_TASK_zunmqr(const MORSE_option_t *options,
                        const MORSE_desc_t *T, int Tm, int Tn, int ldt,
                        const MORSE_desc_t *C, int Cm, int Cn, int ldc)
 {
-    dague_dtd_handle_t* DAGUE_dtd_handle = (dague_dtd_handle_t *)(options->sequence->schedopt);
+    parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(options->sequence->schedopt);
 
-    dague_insert_task(
-        DAGUE_dtd_handle, CORE_zunmqr_parsec, "unmqr",
+    parsec_dtd_taskpool_insert_task(
+        PARSEC_dtd_taskpool, CORE_zunmqr_parsec, options->priority, "unmqr",
         sizeof(MORSE_enum),    &side,                              VALUE,
         sizeof(MORSE_enum),    &trans,                             VALUE,
         sizeof(int),           &m,                                 VALUE,
         sizeof(int),           &n,                                 VALUE,
         sizeof(int),           &k,                                 VALUE,
         sizeof(int),           &ib,                                VALUE,
-        PASSED_BY_REF,         RTBLKADDR( A, MORSE_Complex64_t, Am, An ),     INPUT | REGION_L,
+        PASSED_BY_REF,         RTBLKADDR( A, MORSE_Complex64_t, Am, An ),     INPUT | REGION_FULL,
         sizeof(int),           &lda,                               VALUE,
         PASSED_BY_REF,         RTBLKADDR( T, MORSE_Complex64_t, Tm, Tn ),     INPUT | REGION_FULL,
         sizeof(int),           &ldt,                               VALUE,
-- 
GitLab