Browse Source

Correct minor bugs and adjust tests

Romain LION 5 years ago
parent
commit
128e07f688

+ 1 - 1
mpi/src/mpi_failure_tolerance/starpu_mpi_checkpoint.c

@@ -109,7 +109,7 @@ int starpu_mpi_submit_checkpoint_template(starpu_mpi_checkpoint_template_t cp_te
 //				starpu_mpi_send
 				break;
 			case STARPU_R:
-				handle = (starpu_data_handle_t)item->ptr;
+				handle = *(starpu_data_handle_t*)item->ptr;
 				if (starpu_mpi_data_get_rank(handle)==my_rank)
 				{
 					fprintf(stderr,"sending to %d (tag %d)\n", item->backup_rank, (int)starpu_mpi_data_get_tag(handle));

+ 3 - 4
mpi/src/mpi_failure_tolerance/starpu_mpi_checkpoint_template.c

@@ -142,7 +142,7 @@ int _starpu_mpi_checkpoint_template_freeze(starpu_mpi_checkpoint_template_t cp_t
 				cp_template->message_number++;
 				break;
 			case STARPU_R:
-				if (starpu_mpi_data_get_rank((starpu_data_handle_t) item->ptr))
+				if (starpu_mpi_data_get_rank(*(starpu_data_handle_t*) item->ptr))
 				{
 					cp_template->message_number++;
 				}
@@ -255,13 +255,12 @@ int _starpu_mpi_checkpoint_template_print(starpu_mpi_checkpoint_template_t cp_te
 		fprintf(stderr,"Item %2d: ", i);
 		if (item->type == STARPU_VALUE)
 		{
-			fprintf(stderr, "STARPU_VALUE - ");
-			fprintf(stderr, "Value=%d\n", (*(int *)(item->ptr)));
+			fprintf(stderr, "STARPU_VALUE - Value=%d - backupof:%d - backupedby:%d\n", (*(int *)(item->ptr)), item->backup_of, item->backup_rank);
 		}
 		else if (item->type == STARPU_R)
 		{
 			val = *(int*)starpu_data_handle_to_pointer(*(starpu_data_handle_t*)(item->ptr), 0);
-			fprintf(stderr, "STARPU_R - Value=%d\n", val);
+			fprintf(stderr, "STARPU_R - Value=%d - backupof:%d - backupedby:%d\n", val, item->backup_of, item->backup_rank);
 		}
 		else if (item->type == STARPU_DATA_ARRAY)
 		{

+ 8 - 6
mpi/tests/checkpoints.c

@@ -84,11 +84,12 @@ int pseudotest_checkpoint_template_register(int argc, char* argv[])
 	FPRINTF_MPI(stderr, "Init ok - my rnk %d - size %d\n", me, nb_nodes);
 
 	starpu_variable_data_register(&h, STARPU_MAIN_RAM, (uintptr_t)&val2, sizeof(int));
-
-	starpu_vector_data_register(h_array, STARPU_MAIN_RAM, (uintptr_t)array, ARRAY_SIZE, sizeof(int));
+	starpu_mpi_data_register(h, 56, 0);
+	fprintf(stderr, "&h: %p, h:%p\n", &h, h);
 	for (int i=0 ; i<ARRAY_SIZE ; i++)
 	{
 		starpu_variable_data_register(&h_array[i], STARPU_MAIN_RAM, (uintptr_t)&array[i], sizeof(int));
+		starpu_mpi_data_register(h_array[i], 42+i, 1); //42 to 54
 	}
 
 	starpu_mpi_checkpoint_template_register(&cp_template1, 123486,
@@ -125,14 +126,15 @@ int test_checkpoint_submit(int argc, char* argv[])
 	FPRINTF_MPI(stderr, "Init ok - my rnk %d - size %d\n", me, nb_nodes);
 
 	starpu_variable_data_register(&handle0, STARPU_MAIN_RAM, (uintptr_t)&val0, sizeof(int));
-	starpu_variable_data_register(&handle1, STARPU_MAIN_RAM, (uintptr_t)&val1, sizeof(int));
-
 	starpu_mpi_data_register(handle0, 100, 0);
+
+	starpu_variable_data_register(&handle1, STARPU_MAIN_RAM, (uintptr_t)&val1, sizeof(int));
 	starpu_mpi_data_register(handle1, 200, 1);
 
+
 	starpu_mpi_checkpoint_template_register(&cp_template, 321,
-			STARPU_R, handle0, 1,
-			STARPU_R, handle1, 0,
+			STARPU_R, &handle0, 1,
+			STARPU_R, &handle1, 0,
 			0);
 
 	switch (me)