Pārlūkot izejas kodu

check return value for MPI_Barrier

Nathalie Furmento 8 gadi atpakaļ
vecāks
revīzija
4d50924e35

+ 2 - 1
mpi/tests/insert_task_compute.c

@@ -211,7 +211,8 @@ enodev:
 #endif
 
 nodata:
-	MPI_Barrier(MPI_COMM_WORLD);
+	int barrier_ret = MPI_Barrier(MPI_COMM_WORLD);
+	STARPU_ASSERT(barrier_ret == MPI_SUCCESS);
 	starpu_mpi_shutdown();
 	starpu_shutdown();
 

+ 4 - 2
src/drivers/mpi/driver_mpi_common.c

@@ -462,7 +462,8 @@ void _starpu_mpi_common_wait_event(struct _starpu_async_channel * event)
 
 void _starpu_mpi_common_barrier(void)
 {
-        MPI_Barrier(MPI_COMM_WORLD);
+        int ret = MPI_Barrier(MPI_COMM_WORLD);
+	STARPU_ASSERT_MSG(ret == MPI_SUCCESS, "MPI_Barrier failed");
 }
 
 /* Compute bandwidth and latency between source and sink nodes
@@ -490,7 +491,8 @@ void _starpu_mpi_common_measure_bandwidth_latency(double bandwidth_dtod[STARPU_M
                         if(sender == receiver)
                                 continue;
 
-                        MPI_Barrier(MPI_COMM_WORLD);
+                        ret = MPI_Barrier(MPI_COMM_WORLD);
+			STARPU_ASSERT_MSG(ret == MPI_SUCCESS, "MPI_Barrier failed");
 
                         if(id_proc == sender)
                         {