/**
 * Measurement wrapper for MPI_Cart_get
 * @note Auto-generated by wrapgen from template: std.w
 * @note C interface
 * @note Introduced with MPI 1.0
 * @ingroup topo
 */
int MPI_Cart_get(MPI_Comm comm,
                 int      maxdims,
                 int*     dims,
                 int*     periods,
                 int*     coords)
{
  int return_val;

  if (IS_EVENT_GEN_ON_FOR(TOPO))
  {
    EVENT_GEN_OFF();
    esd_enter(epk_mpi_regid[EPK__MPI_CART_GET]);

    return_val = PMPI_Cart_get(comm, maxdims, dims, periods, coords);

    esd_exit(epk_mpi_regid[EPK__MPI_CART_GET]);
    EVENT_GEN_ON();
  }
  else
  {
    return_val = PMPI_Cart_get(comm, maxdims, dims, periods, coords);
  }

  return return_val;
}
Exemple #2
0
void ompi_cart_get_f(MPI_Fint *comm, MPI_Fint *maxdims, MPI_Fint *dims,
		    ompi_fortran_logical_t *periods, MPI_Fint *coords, MPI_Fint *ierr)
{
    MPI_Comm c_comm;
    int size, c_ierr;
    OMPI_ARRAY_NAME_DECL(dims);
    OMPI_ARRAY_NAME_DECL(coords);
    OMPI_LOGICAL_ARRAY_NAME_DECL(periods);

    c_comm = PMPI_Comm_f2c(*comm);

    size = OMPI_FINT_2_INT(*maxdims);
    OMPI_ARRAY_FINT_2_INT_ALLOC(dims, size);
    OMPI_ARRAY_FINT_2_INT_ALLOC(coords, size);
    OMPI_ARRAY_LOGICAL_2_INT_ALLOC(periods, size);

    c_ierr = PMPI_Cart_get(c_comm,
                          size,
                          OMPI_ARRAY_NAME_CONVERT(dims),
                          OMPI_LOGICAL_ARRAY_NAME_CONVERT(periods),
                          OMPI_ARRAY_NAME_CONVERT(coords));
    if (NULL != ierr) *ierr = OMPI_INT_2_FINT(c_ierr);

    OMPI_ARRAY_INT_2_FINT(dims, size);
    OMPI_ARRAY_INT_2_LOGICAL(periods, size);
    OMPI_ARRAY_INT_2_FINT(coords, size);
}
Exemple #3
0
/* STUB */
int MPI_Cart_get (
    MPI_Comm comm,
    int maxdims,
    int *dims,
    int *periods,
    int *coords )
{
    _MPI_COVERAGE();
    return PMPI_Cart_get(comm, maxdims, dims, periods, coords);
}