Forráskód Böngészése

starpu_mpi_insert_task.c: returns EINVAL when detecting that more than 1 task is eligible to execute the codelet

Nathalie Furmento 14 éve
szülő
commit
9698ea8664
2 módosított fájl, 12 hozzáadás és 2 törlés
  1. 8 0
      mpi/Makefile.am
  2. 4 2
      mpi/starpu_mpi_insert_task.c

+ 8 - 0
mpi/Makefile.am

@@ -157,6 +157,7 @@ check_PROGRAMS +=					\
 	tests/insert_task				\
 	tests/insert_task_cache				\
 	tests/insert_task_block				\
+	tests/insert_task_owner				\
 	tests/multiple_send
 
 testbin_PROGRAMS =				\
@@ -175,6 +176,7 @@ testbin_PROGRAMS =				\
 	tests/insert_task				\
 	tests/insert_task_cache				\
 	tests/insert_task_block				\
+	tests/insert_task_owner				\
 	tests/multiple_send
 
 tests_mpi_isend_LDADD =					\
@@ -267,6 +269,12 @@ tests_insert_task_block_LDADD =				\
 tests_insert_task_block_SOURCES =			\
 	tests/insert_task_block.c
 
+tests_insert_task_owner_LDADD =				\
+	libstarpumpi.la
+
+tests_insert_task_owner_SOURCES =			\
+	tests/insert_task_owner.c
+
 tests_multiple_send_LDADD =				\
 	libstarpumpi.la
 

+ 4 - 2
mpi/starpu_mpi_insert_task.c

@@ -142,7 +142,8 @@ int starpu_mpi_insert_task(MPI_Comm comm, starpu_codelet *codelet, ...)
                                 int mpi_rank = starpu_data_get_rank(data);
                                 if (mpi_rank == me) {
                                         if (do_execute == 0) {
-                                                _STARPU_ERROR("erh? incoherent!\n");
+                                                _STARPU_MPI_DEBUG("erh? incoherent!\n");
+                                                return -EINVAL;
                                         }
                                         else {
                                                 do_execute = 1;
@@ -150,7 +151,8 @@ int starpu_mpi_insert_task(MPI_Comm comm, starpu_codelet *codelet, ...)
                                 }
                                 else if (mpi_rank != -1) {
                                         if (do_execute == 1) {
-                                                _STARPU_ERROR("erh? incoherent!\n");
+                                                _STARPU_MPI_DEBUG("erh? incoherent!\n");
+                                                return -EINVAL;
                                         }
                                         else {
                                                 do_execute = 0;