X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/01493b1dd18d0d860520818b1cfee068b046b4f3..fcaee754669ca60c27288a8e290c25c5accdedbb:/src/smpi/smpi_pmpi.c?ds=sidebyside diff --git a/src/smpi/smpi_pmpi.c b/src/smpi/smpi_pmpi.c index d229642b43..ec3da34945 100644 --- a/src/smpi/smpi_pmpi.c +++ b/src/smpi/smpi_pmpi.c @@ -649,6 +649,23 @@ int PMPI_Comm_size(MPI_Comm comm, int *size) return retval; } +int PMPI_Comm_get_name (MPI_Comm comm, char* name, int* len) +{ + int retval; + + smpi_bench_end(); + if (comm == MPI_COMM_NULL) { + retval = MPI_ERR_COMM; + } else if (name == NULL || len == NULL) { + retval = MPI_ERR_ARG; + } else { + smpi_comm_get_name(comm, name, len); + retval = MPI_SUCCESS; + } + smpi_bench_begin(); + return retval; +} + int PMPI_Comm_group(MPI_Comm comm, MPI_Group * group) { int retval; @@ -746,6 +763,25 @@ int PMPI_Comm_free(MPI_Comm * comm) return retval; } +int PMPI_Comm_disconnect(MPI_Comm * comm) +{ + /* TODO: wait until all communication in comm are done */ + int retval; + + smpi_bench_end(); + if (comm == NULL) { + retval = MPI_ERR_ARG; + } else if (*comm == MPI_COMM_NULL) { + retval = MPI_ERR_COMM; + } else { + smpi_comm_destroy(*comm); + *comm = MPI_COMM_NULL; + retval = MPI_SUCCESS; + } + smpi_bench_begin(); + return retval; +} + int PMPI_Comm_split(MPI_Comm comm, int color, int key, MPI_Comm* comm_out) { int retval;