Пример #1
0
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);
}
Пример #2
0
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);
}
Пример #3
0
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);
}