fixing some minor issues in connect/accept. A connect/accept between two groups of processes (within the same MPI_COMM_WORLD) works already
This commit was SVN r2743.
Этот коммит содержится в:
родитель
9c64200871
Коммит
ad3702b96d
@ -74,8 +74,10 @@ int MPI_Comm_accept(char *port_name, MPI_Info info, int root,
|
|||||||
* Our own port_name is not of interest here, so we pass in NULL.
|
* Our own port_name is not of interest here, so we pass in NULL.
|
||||||
* The two leaders will figure this out later. However, we need the tag.
|
* The two leaders will figure this out later. However, we need the tag.
|
||||||
*/
|
*/
|
||||||
|
if ( rank == root ) {
|
||||||
tmp_port = ompi_parse_port(port_name, &tag);
|
tmp_port = ompi_parse_port(port_name, &tag);
|
||||||
free (tmp_port);
|
free (tmp_port);
|
||||||
|
}
|
||||||
rc = ompi_comm_connect_accept (comm, root, NULL, send_first, &newcomp, tag);
|
rc = ompi_comm_connect_accept (comm, root, NULL, send_first, &newcomp, tag);
|
||||||
|
|
||||||
*newcomm = newcomp;
|
*newcomm = newcomp;
|
||||||
|
@ -76,6 +76,7 @@ int MPI_Comm_connect(char *port_name, MPI_Info info, int root,
|
|||||||
* translate the port_name string into the according process_name_t
|
* translate the port_name string into the according process_name_t
|
||||||
* structure.
|
* structure.
|
||||||
*/
|
*/
|
||||||
|
if ( rank == root ) {
|
||||||
tmp_port = ompi_parse_port (port_name, &tag);
|
tmp_port = ompi_parse_port (port_name, &tag);
|
||||||
port_proc_name = ompi_name_server.convert_string_to_process_name(tmp_port);
|
port_proc_name = ompi_name_server.convert_string_to_process_name(tmp_port);
|
||||||
if ( NULL == port_proc_name ) {
|
if ( NULL == port_proc_name ) {
|
||||||
@ -83,6 +84,7 @@ int MPI_Comm_connect(char *port_name, MPI_Info info, int root,
|
|||||||
return OMPI_ERRHANDLER_INVOKE(comm, MPI_ERR_PORT, FUNC_NAME);
|
return OMPI_ERRHANDLER_INVOKE(comm, MPI_ERR_PORT, FUNC_NAME);
|
||||||
}
|
}
|
||||||
free (tmp_port);
|
free (tmp_port);
|
||||||
|
}
|
||||||
|
|
||||||
rc = ompi_comm_connect_accept (comm, root, port_proc_name, send_first,
|
rc = ompi_comm_connect_accept (comm, root, port_proc_name, send_first,
|
||||||
&newcomp, tag);
|
&newcomp, tag);
|
||||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user