From 362bcf7fd31d56d254714495c745aabe7eaeaf1c Mon Sep 17 00:00:00 2001
From: Lucas Nesi <lucas.leandro-nesi@inria.fr>
Date: Thu, 7 Apr 2022 09:41:44 +0200
Subject: [PATCH 1/2] add STARPU_COMMUTE to starpu gemm task

---
 runtime/starpu/codelets/codelet_zgemm.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/runtime/starpu/codelets/codelet_zgemm.c b/runtime/starpu/codelets/codelet_zgemm.c
index d7d93512a..d0abbf0bf 100644
--- a/runtime/starpu/codelets/codelet_zgemm.c
+++ b/runtime/starpu/codelets/codelet_zgemm.c
@@ -142,7 +142,7 @@ void INSERT_TASK_zgemm( const RUNTIME_option_t *options,
     callback = options->profiling ? cl_zgemm_callback : NULL;
 
     /* Reduce the C access if needed */
-    accessC = ( beta == 0. ) ? STARPU_W : STARPU_RW;
+    accessC = ( beta == 0. ) ? STARPU_W : (STARPU_RW | STARPU_COMMUTE);
 
 #if defined(CHAMELEON_KERNELS_TRACE)
     {
-- 
GitLab


From ef095c5f0f749cea737d724c0385ef8a3b07d267 Mon Sep 17 00:00:00 2001
From: Lucas Nesi <lucas.leandro-nesi@inria.fr>
Date: Thu, 7 Apr 2022 14:14:16 +0200
Subject: [PATCH 2/2] only use commute when beta is 1.0

---
 runtime/starpu/codelets/codelet_zgemm.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/runtime/starpu/codelets/codelet_zgemm.c b/runtime/starpu/codelets/codelet_zgemm.c
index d0abbf0bf..912b44f13 100644
--- a/runtime/starpu/codelets/codelet_zgemm.c
+++ b/runtime/starpu/codelets/codelet_zgemm.c
@@ -142,7 +142,7 @@ void INSERT_TASK_zgemm( const RUNTIME_option_t *options,
     callback = options->profiling ? cl_zgemm_callback : NULL;
 
     /* Reduce the C access if needed */
-    accessC = ( beta == 0. ) ? STARPU_W : (STARPU_RW | STARPU_COMMUTE);
+    accessC = ( beta == 0. ) ? STARPU_W : (STARPU_RW | ((beta == 1.) ? STARPU_COMMUTE : 0));
 
 #if defined(CHAMELEON_KERNELS_TRACE)
     {
-- 
GitLab