Browse Source

mpi cholesky: Add missing gemm tasks

Samuel Thibault 4 years ago
parent
commit
0af4662b00
1 changed files with 2 additions and 4 deletions
  1. 2 4
      mpi/examples/matrix_decomposition/mpi_cholesky_codelets.c

+ 2 - 4
mpi/examples/matrix_decomposition/mpi_cholesky_codelets.c

@@ -348,7 +348,7 @@ static void run_cholesky_prio(starpu_data_handle_t **data_handles, int rank, int
 	unsigned nn = size/nblocks;
 
 	/*
-	 * This is basically similar to above, except that we shift k according to the priorities set in the algorithm, so that prio ~ 2*a or 2*a+1
+	 * This is basically similar to above, except that we shift k according to the priorities set in the algorithm, so that gemm prio ~= 2*nblocks - a
 	 * double-antidiagonal number:
 	 * - a=0 contains (0,0) plus (1,0)
 	 * - a=1 contains (2,0), (1,1) plus (3,0), (2, 1)
@@ -365,8 +365,6 @@ static void run_cholesky_prio(starpu_data_handle_t **data_handles, int rank, int
 			   priorities, but needs to be this for dependencies */
 			m = a-2*k-n;
 
-			if (m < n || m >= nblocks)
-				continue;
 
 			if (m == n)
 			{
@@ -377,7 +375,7 @@ static void run_cholesky_prio(starpu_data_handle_t **data_handles, int rank, int
 						       STARPU_FLOPS, (double) FLOPS_SPOTRF(nn),
 						       0);
 			}
-			else
+			else if (m >= n && m < nblocks)
 			{
 				/* non-diagonal block, solve */
 				starpu_mpi_task_insert(MPI_COMM_WORLD, &cl21,