IOR
Data Structures | Macros | Functions | Variables
aiori-MPIIO.c File Reference
#include <stdio.h>
#include <stdlib.h>
#include <sys/stat.h>
#include "ior.h"
#include "iordef.h"
#include "aiori.h"
#include "utilities.h"
Include dependency graph for aiori-MPIIO.c:

Go to the source code of this file.

Data Structures

struct  mpiio_fd_t
 
struct  mpiio_options_t
 

Macros

#define MPIAPI   /* defined as __stdcall on Windows */
 

Functions

static IOR_offset_t SeekOffset (MPI_File, IOR_offset_t, aiori_mod_opt_t *)
 
static aiori_fd_tMPIIO_Create (char *, int iorflags, aiori_mod_opt_t *)
 
static aiori_fd_tMPIIO_Open (char *, int flags, aiori_mod_opt_t *)
 
static IOR_offset_t MPIIO_Xfer (int, aiori_fd_t *, IOR_size_t *, IOR_offset_t, IOR_offset_t, aiori_mod_opt_t *)
 
static void MPIIO_Close (aiori_fd_t *, aiori_mod_opt_t *)
 
static char * MPIIO_GetVersion ()
 
static void MPIIO_Fsync (aiori_fd_t *, aiori_mod_opt_t *)
 
static int MPIIO_check_params (aiori_mod_opt_t *options)
 
static option_helpMPIIO_options (aiori_mod_opt_t **init_backend_options, aiori_mod_opt_t *init_values)
 
void MPIIO_xfer_hints (aiori_xfer_hint_t *params)
 
int MPIIO_Access (const char *path, int mode, aiori_mod_opt_t *module_options)
 
void MPIIO_Delete (char *testFileName, aiori_mod_opt_t *module_options)
 
IOR_offset_t MPIIO_GetFileSize (aiori_mod_opt_t *module_options, char *testFileName)
 

Variables

ior_aiori_t mpiio_aiori
 
static aiori_xfer_hint_thints = NULL
 

Macro Definition Documentation

◆ MPIAPI

#define MPIAPI   /* defined as __stdcall on Windows */

Definition at line 29 of file aiori-MPIIO.c.

Referenced by MPIIO_Xfer().

Function Documentation

◆ MPIIO_Access()

int MPIIO_Access ( const char *  path,
int  mode,
aiori_mod_opt_t module_options 
)

Definition at line 139 of file aiori-MPIIO.c.

References aiori_xfer_hint_t::dryRun, mpiio_options_t::hintsFileName, MPI_CHECK, and SetHints().

Referenced by HDF5_Access(), and NCMPI_Access().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ MPIIO_check_params()

static int MPIIO_check_params ( aiori_mod_opt_t options)
static

◆ MPIIO_Close()

static void MPIIO_Close ( aiori_fd_t fdp,
aiori_mod_opt_t module_options 
)
static

◆ MPIIO_Create()

static aiori_fd_t * MPIIO_Create ( char *  testFileName,
int  iorflags,
aiori_mod_opt_t module_options 
)
static

Definition at line 171 of file aiori-MPIIO.c.

References MPIIO_Open().

Here is the call graph for this function:

◆ MPIIO_Delete()

void MPIIO_Delete ( char *  testFileName,
aiori_mod_opt_t module_options 
)

Definition at line 521 of file aiori-MPIIO.c.

References aiori_xfer_hint_t::dryRun, and MPI_CHECKF.

Referenced by HDF5_Delete(), and NCMPI_Delete().

Here is the caller graph for this function:

◆ MPIIO_Fsync()

static void MPIIO_Fsync ( aiori_fd_t fdp,
aiori_mod_opt_t module_options 
)
static

Definition at line 487 of file aiori-MPIIO.c.

References aiori_xfer_hint_t::dryRun, EWARN, and mpiio_fd_t::fd.

◆ MPIIO_GetFileSize()

IOR_offset_t MPIIO_GetFileSize ( aiori_mod_opt_t module_options,
char *  testFileName 
)

Definition at line 588 of file aiori-MPIIO.c.

References aiori_xfer_hint_t::dryRun, aiori_xfer_hint_t::filePerProc, mpiio_options_t::hintsFileName, MPI_CHECK, SetHints(), testComm, and TRUE.

Referenced by HDF5_GetFileSize(), and NCMPI_GetFileSize().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ MPIIO_GetVersion()

static char * MPIIO_GetVersion ( )
static

Definition at line 533 of file aiori-MPIIO.c.

References MPI_CHECK.

◆ MPIIO_Open()

static aiori_fd_t * MPIIO_Open ( char *  testFileName,
int  flags,
aiori_mod_opt_t module_options 
)
static

◆ MPIIO_options()

static option_help* MPIIO_options ( aiori_mod_opt_t **  init_backend_options,
aiori_mod_opt_t init_values 
)
static

◆ MPIIO_Xfer()

static IOR_offset_t MPIIO_Xfer ( int  access,
aiori_fd_t fdp,
IOR_size_t buffer,
IOR_offset_t  length,
IOR_offset_t  offset,
aiori_mod_opt_t module_options 
)
static

◆ MPIIO_xfer_hints()

void MPIIO_xfer_hints ( aiori_xfer_hint_t params)

Definition at line 111 of file aiori-MPIIO.c.

Referenced by HDF5_init_xfer_options(), and NCMPI_xfer_hints().

Here is the caller graph for this function:

◆ SeekOffset()

static IOR_offset_t SeekOffset ( MPI_File  fd,
IOR_offset_t  offset,
aiori_mod_opt_t module_options 
)
static

Variable Documentation

◆ hints

aiori_xfer_hint_t* hints = NULL
static

Definition at line 109 of file aiori-MPIIO.c.

◆ mpiio_aiori

ior_aiori_t mpiio_aiori
Initial value:
= {
.name = "MPIIO",
.name_legacy = NULL,
.create = MPIIO_Create,
.get_options = MPIIO_options,
.xfer_hints = MPIIO_xfer_hints,
.open = MPIIO_Open,
.xfer = MPIIO_Xfer,
.close = MPIIO_Close,
.delete = MPIIO_Delete,
.get_version = MPIIO_GetVersion,
.fsync = MPIIO_Fsync,
.get_file_size = MPIIO_GetFileSize,
.statfs = aiori_posix_statfs,
.access = MPIIO_Access,
.check_params = MPIIO_check_params
}
static aiori_fd_t * MPIIO_Create(char *, int iorflags, aiori_mod_opt_t *)
Definition: aiori-MPIIO.c:171
static int MPIIO_check_params(aiori_mod_opt_t *options)
Definition: aiori-MPIIO.c:115
IOR_offset_t MPIIO_GetFileSize(aiori_mod_opt_t *module_options, char *testFileName)
Definition: aiori-MPIIO.c:588
int aiori_posix_stat(const char *path, struct stat *buf, aiori_mod_opt_t *module_options)
Definition: aiori.c:227
int MPIIO_Access(const char *path, int mode, aiori_mod_opt_t *module_options)
Definition: aiori-MPIIO.c:139
static aiori_fd_t * MPIIO_Open(char *, int flags, aiori_mod_opt_t *)
Definition: aiori-MPIIO.c:179
void MPIIO_xfer_hints(aiori_xfer_hint_t *params)
Definition: aiori-MPIIO.c:111
static option_help * MPIIO_options(aiori_mod_opt_t **init_backend_options, aiori_mod_opt_t *init_values)
Definition: aiori-MPIIO.c:63
static IOR_offset_t MPIIO_Xfer(int, aiori_fd_t *, IOR_size_t *, IOR_offset_t, IOR_offset_t, aiori_mod_opt_t *)
Definition: aiori-MPIIO.c:334
static char * MPIIO_GetVersion()
Definition: aiori-MPIIO.c:533
int aiori_posix_rmdir(const char *path, aiori_mod_opt_t *module_options)
Definition: aiori.c:217
int aiori_posix_mkdir(const char *path, mode_t mode, aiori_mod_opt_t *module_options)
Definition: aiori.c:212
static void MPIIO_Close(aiori_fd_t *, aiori_mod_opt_t *)
Definition: aiori-MPIIO.c:500
int aiori_posix_statfs(const char *path, ior_aiori_statfs_t *stat_buf, aiori_mod_opt_t *module_options)
Definition: aiori.c:166
void MPIIO_Delete(char *testFileName, aiori_mod_opt_t *module_options)
Definition: aiori-MPIIO.c:521
static void MPIIO_Fsync(aiori_fd_t *, aiori_mod_opt_t *)
Definition: aiori-MPIIO.c:487
#define NULL
Definition: iordef.h:70

Definition at line 87 of file aiori-MPIIO.c.