root/ompi/mca/io/romio321/romio/mpi-io/iwrite_atall.c

/* [<][>][^][v][top][bottom][index][help] */

DEFINITIONS

This source file includes following definitions.
  1. MPI_File_iwrite_at_all

   1 /* -*- Mode: C; c-basic-offset:4 ; indent-tabs-mode:nil ; -*- */
   2 /*
   3  *  (C) 2014 by Argonne National Laboratory.
   4  *      See COPYRIGHT in top-level directory.
   5  */
   6 
   7 #include "mpioimpl.h"
   8 
   9 #ifdef HAVE_WEAK_SYMBOLS
  10 
  11 #if defined(HAVE_PRAGMA_WEAK)
  12 #pragma weak MPI_File_iwrite_at_all = PMPI_File_iwrite_at_all
  13 #elif defined(HAVE_PRAGMA_HP_SEC_DEF)
  14 #pragma _HP_SECONDARY_DEF PMPI_File_iwrite_at_all MPI_File_iwrite_at_all
  15 #elif defined(HAVE_PRAGMA_CRI_DUP)
  16 #pragma _CRI duplicate MPI_File_iwrite_at_all as PMPI_File_iwrite_at_all
  17 /* end of weak pragmas */
  18 #elif defined(HAVE_WEAK_ATTRIBUTE)
  19 int MPI_File_iwrite_at_all(MPI_File fh, MPI_Offset offset, const void *buf, int count,
  20                            MPI_Datatype datatype, MPI_Request *request)
  21     __attribute__((weak,alias("PMPI_File_iwrite_at_all")));
  22 #endif
  23 
  24 /* Include mapping from MPI->PMPI */
  25 #define MPIO_BUILD_PROFILING
  26 #include "mpioprof.h"
  27 #endif
  28 
  29 #ifdef HAVE_MPI_GREQUEST
  30 #include "mpiu_greq.h"
  31 #endif
  32 
  33 /*@
  34     MPI_File_iwrite_at_all - Nonblocking collective write using explicit offset
  35 
  36 Input Parameters:
  37 . fh - file handle (handle)
  38 . offset - file offset (nonnegative integer)
  39 . buf - initial address of buffer (choice)
  40 . count - number of elements in buffer (nonnegative integer)
  41 . datatype - datatype of each buffer element (handle)
  42 
  43 Output Parameters:
  44 . request - request object (handle)
  45 
  46 .N fortran
  47 @*/
  48 int MPI_File_iwrite_at_all(MPI_File fh, MPI_Offset offset, ROMIO_CONST void *buf,
  49                            int count, MPI_Datatype datatype,
  50                            MPI_Request *request)
  51 {
  52     int error_code;
  53     static char myname[] = "MPI_FILE_IWRITE_AT_ALL";
  54 #ifdef MPI_hpux
  55     int fl_xmpi;
  56 
  57     HPMP_IO_START(fl_xmpi, BLKMPIFILEIWRITEATALL, TRDTBLOCK, fh, datatype, count);
  58 #endif /* MPI_hpux */
  59 
  60     error_code = MPIOI_File_iwrite_all(fh, offset, ADIO_EXPLICIT_OFFSET,
  61                                       buf, count, datatype, myname, request);
  62 
  63 #ifdef MPI_hpux
  64     HPMP_IO_END(fl_xmpi, fh, datatype, count);
  65 #endif /* MPI_hpux */
  66     return error_code;
  67 }
  68 

/* [<][>][^][v][top][bottom][index][help] */