瀏覽代碼

StarPU-MPI: Simplify starpu_mpi_initialize_extended. Remove the initialize_mpi parameter parameter as it does not need to be made available to users

Nathalie Furmento 14 年之前
父節點
當前提交
7d08fe6604

+ 1 - 1
mpi/examples/cholesky/mpi_cholesky.c

@@ -171,7 +171,7 @@ int main(int argc, char **argv)
 	parse_args(argc, argv);
 
 	starpu_init(NULL);
-	starpu_mpi_initialize_extended(1, &rank, &nodes);
+	starpu_mpi_initialize_extended(&rank, &nodes);
 	starpu_helper_cublas_init();
 
 	unsigned i,j,x,y;

+ 1 - 1
mpi/examples/mpi_lu/plu_example.c

@@ -426,7 +426,7 @@ int main(int argc, char **argv)
 	/* We disable sequential consistency in this example */
 	starpu_data_set_default_sequential_consistency_flag(0);
 
-	starpu_mpi_initialize_extended(1, &rank, &world_size);
+	starpu_mpi_initialize_extended(&rank, &world_size);
 
 	STARPU_ASSERT(p*q == world_size);
 

+ 1 - 1
mpi/examples/stencil/stencil5.c

@@ -73,7 +73,7 @@ int main(int argc, char **argv)
         starpu_data_handle data_handles[X][Y];
 
 	starpu_init(NULL);
-	starpu_mpi_initialize_extended(1, &rank, &size);
+	starpu_mpi_initialize_extended(&rank, &size);
         parse_args(argc, argv);
 
         for(x = 0; x < X; x++) {

+ 13 - 8
mpi/starpu_mpi.c

@@ -728,13 +728,8 @@ static void _starpu_mpi_add_sync_point_in_fxt(void)
 #endif
 }
 
-
-int starpu_mpi_initialize(void)
-{
-        return starpu_mpi_initialize_extended(0, NULL, NULL);
-}
-
-int starpu_mpi_initialize_extended(int initialize_mpi, int *rank, int *world_size)
+static
+int _starpu_mpi_initialize(int initialize_mpi, int *rank, int *world_size)
 {
 	PTHREAD_MUTEX_INIT(&mutex, NULL);
 	PTHREAD_COND_INIT(&cond, NULL);
@@ -752,7 +747,7 @@ int starpu_mpi_initialize_extended(int initialize_mpi, int *rank, int *world_siz
 		PTHREAD_COND_WAIT(&cond, &mutex);
 	PTHREAD_MUTEX_UNLOCK(&mutex);
 
-        if (initialize_mpi) {
+        if (rank && world_size) {
                 _STARPU_DEBUG("Calling MPI_Comm_rank\n");
                 MPI_Comm_rank(MPI_COMM_WORLD, rank);
                 MPI_Comm_size(MPI_COMM_WORLD, world_size);
@@ -774,6 +769,16 @@ int starpu_mpi_initialize_extended(int initialize_mpi, int *rank, int *world_siz
 	return 0;
 }
 
+int starpu_mpi_initialize(void)
+{
+        return _starpu_mpi_initialize(0, NULL, NULL);
+}
+
+int starpu_mpi_initialize_extended(int *rank, int *world_size)
+{
+        return _starpu_mpi_initialize(1, rank, world_size);
+}
+
 int starpu_mpi_shutdown(void)
 {
 	void *value;

+ 1 - 1
mpi/starpu_mpi.h

@@ -33,7 +33,7 @@ int starpu_mpi_wait(starpu_mpi_req *req, MPI_Status *status);
 int starpu_mpi_test(starpu_mpi_req *req, int *flag, MPI_Status *status);
 int starpu_mpi_barrier(MPI_Comm comm);
 int starpu_mpi_initialize(void);
-int starpu_mpi_initialize_extended(int initialize_mpi, int *rank, int *world_size);
+int starpu_mpi_initialize_extended(int *rank, int *world_size);
 int starpu_mpi_shutdown(void);
 
 int starpu_mpi_insert_task(MPI_Comm comm, starpu_codelet *codelet, ...);

+ 1 - 1
mpi/tests/insert_task.c

@@ -49,7 +49,7 @@ int main(int argc, char **argv)
         starpu_data_handle data_handles[X][Y];
 
 	starpu_init(NULL);
-	starpu_mpi_initialize_extended(1, &rank, &size);
+	starpu_mpi_initialize_extended(&rank, &size);
 
         for(x = 0; x < X; x++) {
                 for (y = 0; y < Y; y++) {

+ 1 - 1
mpi/tests/insert_task_block.c

@@ -62,7 +62,7 @@ int main(int argc, char **argv)
         starpu_data_handle data_handles[SIZE][SIZE];
 
 	starpu_init(NULL);
-	starpu_mpi_initialize_extended(1, &rank, &size);
+	starpu_mpi_initialize_extended(&rank, &size);
 
         for(x = 0; x < SIZE; x++) {
                 for (y = 0; y < SIZE; y++) {

+ 1 - 1
mpi/tests/insert_task_cache.c

@@ -49,7 +49,7 @@ int main(int argc, char **argv)
         starpu_data_handle data_handles[X][Y];
 
 	starpu_init(NULL);
-	starpu_mpi_initialize_extended(1, &rank, &size);
+	starpu_mpi_initialize_extended(&rank, &size);
 
         for(x = 0; x < X; x++) {
                 for (y = 0; y < Y; y++) {

+ 1 - 1
mpi/tests/insert_task_owner.c

@@ -53,7 +53,7 @@ int main(int argc, char **argv)
         starpu_data_handle data_handlesx1;
 
 	starpu_init(NULL);
-	starpu_mpi_initialize_extended(1, &rank, &size);
+	starpu_mpi_initialize_extended(&rank, &size);
 
         if (size != 2) {
 		if (rank == 0) fprintf(stderr, "We need exactly 2 processes.\n");

+ 1 - 1
mpi/tests/insert_task_owner2.c

@@ -52,7 +52,7 @@ int main(int argc, char **argv)
         starpu_data_handle data_handles[4];
 
 	starpu_init(NULL);
-	starpu_mpi_initialize_extended(1, &rank, &size);
+	starpu_mpi_initialize_extended(&rank, &size);
 
         if (rank > 1) {
                 starpu_mpi_shutdown();

+ 1 - 1
mpi/tests/multiple_send.c

@@ -28,7 +28,7 @@ int main(int argc, char **argv)
         starpu_data_handle recv_handle[2];
 
 	starpu_init(NULL);
-	starpu_mpi_initialize_extended(1, &rank, &size);
+	starpu_mpi_initialize_extended(&rank, &size);
 
 	if (size < 2)
 	{

+ 1 - 1
mpi/tests/ring_async_implicit.c

@@ -63,7 +63,7 @@ int main(int argc, char **argv)
 #endif
 
 	starpu_init(NULL);
-	starpu_mpi_initialize_extended(1, &rank, &size);
+	starpu_mpi_initialize_extended(&rank, &size);
 
 	if (size < 2)
 	{