Prechádzať zdrojové kódy

mpi/tests: register data with a home node set to -1 when not running on the node it belongs to

Nathalie Furmento 10 rokov pred
rodič
commit
10146adfcb

+ 4 - 1
mpi/tests/insert_task_compute.c

@@ -56,7 +56,10 @@ int test(int rank, int node, int *before, int *after, int task_insert, int data_
 		x[i] = before[rank*2+i];
 		if (rank <= 1)
 			FPRINTF_MPI("before computation x[%d] = %d\n", i, x[i]);
-		starpu_variable_data_register(&data_handles[i], STARPU_MAIN_RAM, (uintptr_t)&x[i], sizeof(int));
+		if (rank == i)
+			starpu_variable_data_register(&data_handles[i], STARPU_MAIN_RAM, (uintptr_t)&x[i], sizeof(int));
+		else
+			starpu_variable_data_register(&data_handles[i], -1, (uintptr_t)NULL, sizeof(int));
 		starpu_mpi_data_register(data_handles[i], i, i);
 		descrs[i].handle = data_handles[i];
 	}

+ 10 - 2
mpi/tests/insert_task_node_choice.c

@@ -55,8 +55,16 @@ int main(int argc, char **argv)
 
 	if (rank != 0 && rank != 1) goto end;
 
-	starpu_variable_data_register(&data_handlesx0, STARPU_MAIN_RAM, (uintptr_t)&x0, sizeof(x0));
-	starpu_variable_data_register(&data_handlesx1, STARPU_MAIN_RAM, (uintptr_t)&x1, sizeof(x1));
+	if (rank == 0)
+	{
+		starpu_variable_data_register(&data_handlesx0, STARPU_MAIN_RAM, (uintptr_t)&x0, sizeof(x0));
+		starpu_variable_data_register(&data_handlesx1, -1, (uintptr_t)NULL, sizeof(x1));
+	}
+	else
+	{
+		starpu_variable_data_register(&data_handlesx0, -1, (uintptr_t)NULL, sizeof(x0));
+		starpu_variable_data_register(&data_handlesx1, STARPU_MAIN_RAM, (uintptr_t)&x1, sizeof(x1));
+	}
 	starpu_mpi_data_register(data_handlesx0, 100, 0);
 	starpu_mpi_data_register(data_handlesx1, 200, 1);