1
1

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.
Этот коммит содержится в:
Edgar Gabriel 2004-09-17 13:16:14 +00:00
родитель 9c64200871
Коммит ad3702b96d
2 изменённых файлов: 12 добавлений и 8 удалений

Просмотреть файл

@ -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);