Пример #1
0
/**
 * Measurement wrapper for MPI_Comm_accept
 * @note Auto-generated by wrapgen from template: comm_mgnt.w
 * @note C interface
 * @note Introduced with MPI 2.0
 * @ingroup spawn
 */
int MPI_Comm_accept(char*     port_name,
                    MPI_Info  info,
                    int       root,
                    MPI_Comm  comm,
                    MPI_Comm* newcomm)
{
  const int event_gen_active = IS_EVENT_GEN_ON_FOR(SPAWN);
  int       return_val;

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

  return_val = PMPI_Comm_accept(port_name, info, root, comm, newcomm);
  if (*newcomm != MPI_COMM_NULL)
  {
    epk_comm_create(*newcomm);
  }

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

  return return_val;
}
Пример #2
0
void ompi_comm_accept_f(char *port_name, MPI_Fint *info, MPI_Fint *root,
		       MPI_Fint *comm, MPI_Fint *newcomm, MPI_Fint *ierr,
		       int port_name_len)
{
    int c_ierr;
    MPI_Comm c_comm, c_new_comm;
    MPI_Info c_info;
    char *c_port_name;

    c_comm = PMPI_Comm_f2c(*comm);
    c_info = PMPI_Info_f2c(*info);
    ompi_fortran_string_f2c(port_name, port_name_len, &c_port_name);


    c_ierr = PMPI_Comm_accept(c_port_name, c_info,
                             OMPI_FINT_2_INT(*root),
                             c_comm, &c_new_comm);
    if (NULL != ierr) *ierr = OMPI_INT_2_FINT(c_ierr);

    if (MPI_SUCCESS == c_ierr) {
        *newcomm = PMPI_Comm_c2f(c_new_comm);
    }
    free ( c_port_name );
}
Пример #3
0
int MPI_Comm_accept( char *port_name, MPI_Info info, int root, MPI_Comm comm, MPI_Comm *newcomm){
 return PMPI_Comm_accept( port_name, info, root, comm, newcomm);
}