void SNetDistribSendRecord(snet_dest_t *dest, snet_record_t *rec) { static mpi_buf_t sendBuf = {0, 0, NULL}; sendBuf.offset = 0; SNetRecSerialise(rec, &sendBuf); SNetDestSerialise(dest, &sendBuf); MPISendBuf(&sendBuf, dest->node, snet_rec); }
void SNetDistribSendRecord(snet_dest_t dest, snet_record_t *rec) { static mpi_buf_t sendBuf = {0, 0, NULL}; sendBuf.offset = 0; SNetRecSerialise(rec, &sendBuf, &PackInt, &PackRef); PackDest(&sendBuf, &dest); MPISend(sendBuf.data, sendBuf.offset, dest.node, snet_rec); }
void SNetDistribSendRecord(snet_dest_t dest, snet_record_t *rec) { int node = dest.node; snet_comm_type_t type = snet_rec; start_write_node(node); cpy_mem_to_mpb(node, &type, sizeof(snet_comm_type_t)); SNetRecSerialise(rec, (void*) node, &PackInt, &PackRef); dest.node = node_location; cpy_mem_to_mpb(node, &dest, sizeof(snet_dest_t)); dest.node = node; stop_write_node(node); }