1
1

Fix mistakes in the basic component.. can't call collectives on the communicator and always pass the basic module.. have to give them the module off the communicator.

This commit was SVN r16329.
Этот коммит содержится в:
Andrew Friedley 2007-10-04 16:29:24 +00:00
родитель 77f080575f
Коммит 2e66590993
5 изменённых файлов: 15 добавлений и 13 удалений

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

@ -62,10 +62,10 @@ mca_coll_basic_allgather_intra(void *sbuf, int scount,
/* Gather and broadcast. */
err = comm->c_coll.coll_gather(sbuf, scount, sdtype, rbuf, rcount,
rdtype, 0, comm, module);
rdtype, 0, comm, comm->c_coll.coll_gather_module);
if (MPI_SUCCESS == err) {
err = comm->c_coll.coll_bcast(rbuf, rcount * ompi_comm_size(comm),
rdtype, 0, comm, module);
rdtype, 0, comm, comm->c_coll.coll_bcast_module);
}
/* All done */

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

@ -71,8 +71,8 @@ mca_coll_basic_allgatherv_intra(void *sbuf, int scount,
err = comm->c_coll.coll_gatherv(send_buf,
rcounts[rank], send_type,rbuf,
rcounts, disps, rdtype, 0,
comm, module);
comm, comm->c_coll.coll_gatherv_module);
if (MPI_SUCCESS != err) {
return err;
}
@ -99,7 +99,8 @@ mca_coll_basic_allgatherv_intra(void *sbuf, int scount,
return err;
}
comm->c_coll.coll_bcast( rbuf, 1 ,newtype,0,comm, module);
comm->c_coll.coll_bcast( rbuf, 1 ,newtype,0,comm,
comm->c_coll.coll_bcast_module);
ompi_ddt_destroy (&newtype);
@ -141,7 +142,8 @@ mca_coll_basic_allgatherv_inter(void *sbuf, int scount,
}
err = comm->c_coll.coll_alltoallv(sbuf, scounts, sdisps, sdtype,
rbuf, rcounts, disps, rdtype, comm, module);
rbuf, rcounts, disps, rdtype, comm,
comm->c_coll.coll_alltoallv_module);
if (NULL != sdisps) {
free(sdisps);

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

@ -49,18 +49,18 @@ mca_coll_basic_allreduce_intra(void *sbuf, void *rbuf, int count,
if (MPI_IN_PLACE == sbuf) {
if (0 == ompi_comm_rank(comm)) {
err = comm->c_coll.coll_reduce(MPI_IN_PLACE, rbuf, count, dtype, op, 0, comm, module);
err = comm->c_coll.coll_reduce(MPI_IN_PLACE, rbuf, count, dtype, op, 0, comm, comm->c_coll.coll_reduce_module);
} else {
err = comm->c_coll.coll_reduce(rbuf, NULL, count, dtype, op, 0, comm, module);
err = comm->c_coll.coll_reduce(rbuf, NULL, count, dtype, op, 0, comm, comm->c_coll.coll_reduce_module);
}
} else {
err = comm->c_coll.coll_reduce(sbuf, rbuf, count, dtype, op, 0, comm, module);
err = comm->c_coll.coll_reduce(sbuf, rbuf, count, dtype, op, 0, comm, comm->c_coll.coll_reduce_module);
}
if (MPI_SUCCESS != err) {
return err;
}
return comm->c_coll.coll_bcast(rbuf, count, dtype, 0, comm, module);
return comm->c_coll.coll_bcast(rbuf, count, dtype, 0, comm, comm->c_coll.coll_bcast_module);
}

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

@ -189,5 +189,5 @@ mca_coll_basic_barrier_inter_lin(struct ompi_communicator_t *comm,
rank = ompi_comm_rank(comm);
return comm->c_coll.coll_allreduce(&rank, &result, 1, MPI_INT, MPI_MAX,
comm, module);
comm, comm->c_coll.coll_allreduce_module);
}

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

@ -325,13 +325,13 @@ mca_coll_basic_reduce_scatter_intra(void *sbuf, void *rbuf, int *rcounts,
/* reduction */
err =
comm->c_coll.coll_reduce(sbuf, recv_buf, count, dtype, op, 0,
comm, module);
comm, comm->c_coll.coll_reduce_module);
/* scatter */
if (MPI_SUCCESS == err) {
err = comm->c_coll.coll_scatterv(recv_buf, rcounts, disps, dtype,
rbuf, rcounts[rank], dtype, 0,
comm, module);
comm, comm->c_coll.coll_scatterv_module);
}
}