}
/* PMPI User level calls */
-extern "C" { // Obviously, the C MPI interface should use the C linkage
int PMPI_Send_init(void *buf, int count, MPI_Datatype datatype, int dst, int tag, MPI_Comm comm, MPI_Request * request)
{
TRACE_smpi_comm_in(my_proc_id, __FUNCTION__,
new simgrid::instr::Pt2PtTIData("Irecv", src,
datatype->is_replayable() ? count : count * datatype->size(),
- encode_datatype(datatype)));
+ simgrid::smpi::Datatype::encode(datatype)));
*request = simgrid::smpi::Request::irecv(buf, count, datatype, src, tag, comm);
retval = MPI_SUCCESS;
TRACE_smpi_comm_in(my_proc_id, __FUNCTION__,
new simgrid::instr::Pt2PtTIData("Isend", dst,
datatype->is_replayable() ? count : count * datatype->size(),
- encode_datatype(datatype)));
+ simgrid::smpi::Datatype::encode(datatype)));
TRACE_smpi_send(my_proc_id, my_proc_id, trace_dst, tag, count * datatype->size());
TRACE_smpi_comm_in(my_proc_id, __FUNCTION__,
new simgrid::instr::Pt2PtTIData("ISsend", dst,
datatype->is_replayable() ? count : count * datatype->size(),
- encode_datatype(datatype)));
+ simgrid::smpi::Datatype::encode(datatype)));
TRACE_smpi_send(my_proc_id, my_proc_id, trace_dst, tag, count * datatype->size());
*request = simgrid::smpi::Request::issend(buf, count, datatype, dst, tag, comm);
TRACE_smpi_comm_in(my_proc_id, __FUNCTION__,
new simgrid::instr::Pt2PtTIData("recv", src,
datatype->is_replayable() ? count : count * datatype->size(),
- encode_datatype(datatype)));
+ simgrid::smpi::Datatype::encode(datatype)));
simgrid::smpi::Request::recv(buf, count, datatype, src, tag, comm, status);
retval = MPI_SUCCESS;
TRACE_smpi_comm_in(my_proc_id, __FUNCTION__,
new simgrid::instr::Pt2PtTIData("send", dst,
datatype->is_replayable() ? count : count * datatype->size(),
- encode_datatype(datatype)));
+ simgrid::smpi::Datatype::encode(datatype)));
if (not TRACE_smpi_view_internals()) {
TRACE_smpi_send(my_proc_id, my_proc_id, dst_traced, tag, count * datatype->size());
}
TRACE_smpi_comm_in(my_proc_id, __FUNCTION__,
new simgrid::instr::Pt2PtTIData("Ssend", dst,
datatype->is_replayable() ? count : count * datatype->size(),
- encode_datatype(datatype)));
+ simgrid::smpi::Datatype::encode(datatype)));
TRACE_smpi_send(my_proc_id, my_proc_id, dst_traced, tag, count * datatype->size());
simgrid::smpi::Request::ssend(buf, count, datatype, dst, tag, comm);
new simgrid::instr::VarCollTIData(
"sendRecv", -1, sendtype->is_replayable() ? sendcount : sendcount * sendtype->size(),
dst_hack, recvtype->is_replayable() ? recvcount : recvcount * recvtype->size(), src_hack,
- encode_datatype(sendtype), encode_datatype(recvtype)));
+ simgrid::smpi::Datatype::encode(sendtype), simgrid::smpi::Datatype::encode(recvtype)));
TRACE_smpi_send(my_proc_id, my_proc_id, dst_traced, sendtag, sendcount * sendtype->size());
MPI_Fint PMPI_Request_c2f(MPI_Request request) {
return request->c2f();
}
-
-}