/**
 * Measurement wrapper for MPI_Intercomm_create
 * @note Auto-generated by wrapgen from template: comm_mgnt.w
 * @note C interface
 * @note Introduced with MPI 1.0
 * @ingroup cg
 */
int MPI_Intercomm_create(MPI_Comm  local_comm,
                         int       local_leader,
                         MPI_Comm  peer_comm,
                         int       remote_leader,
                         int       tag,
                         MPI_Comm* newcomm)
{
  const int event_gen_active = IS_EVENT_GEN_ON_FOR(CG);
  int       return_val;

  if (event_gen_active)
  {
    EVENT_GEN_OFF();
    esd_enter(epk_mpi_regid[EPK__MPI_INTERCOMM_CREATE]);
  }

  return_val = PMPI_Intercomm_create(local_comm,
                                     local_leader,
                                     peer_comm,
                                     remote_leader,
                                     tag,
                                     newcomm);
  if (*newcomm != MPI_COMM_NULL)
  {
    epk_comm_create(*newcomm);
  }

  if (event_gen_active)
  {
    esd_exit(epk_mpi_regid[EPK__MPI_INTERCOMM_CREATE]);
    EVENT_GEN_ON();
  }

  return return_val;
}
Beispiel #2
0
int MPI_Intercomm_create(MPI_Comm local_comm, int local_leader, MPI_Comm peer_comm, int remote_leader, int tag, MPI_Comm* comm_out) {
  return PMPI_Intercomm_create(local_comm, local_leader, peer_comm, remote_leader, tag, comm_out);
}