⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 adio.h

📁 fortran并行计算包
💻 H
📖 第 1 页 / 共 2 页
字号:
    int file_system;         /* type of file system */    int access_mode;         /* Access mode (sequential, append, etc.) */    ADIO_Offset disp;        /* reqd. for MPI-IO */    MPI_Datatype etype;      /* reqd. for MPI-IO */    MPI_Datatype filetype;   /* reqd. for MPI-IO */    int etype_size;          /* in bytes */    ADIOI_Hints *hints;      /* structure containing fs-indep. info values */    MPI_Info info;    /* The following support the split collective operations */    int split_coll_count;    /* count of outstanding split coll. ops. */    MPI_Status split_status; /* status used for split collectives */    MPI_Datatype split_datatype; /* datatype used for split collectives */    /* The following support the shared file operations */    char *shared_fp_fname;   /* name of file containing shared file pointer */    struct ADIOI_FileD *shared_fp_fd;  /* file handle of file                                          containing shared fp */    int async_count;         /* count of outstanding nonblocking operations */    int perm;    int atomicity;          /* true=atomic, false=nonatomic */    int fortran_handle;     /* handle for Fortran interface if needed */    MPI_Errhandler err_handler;    void *fs_ptr;            /* file-system specific information */} ADIOI_FileD;typedef struct ADIOI_FileD *ADIO_File;typedef MPI_Request ADIO_Request;/* fcntl structure */typedef struct {    ADIO_Offset disp;    MPI_Datatype etype;    MPI_Datatype filetype;    MPI_Info info;    int atomicity;    ADIO_Offset fsize;       /* for get_fsize only */    ADIO_Offset diskspace;   /* for file preallocation */} ADIO_Fcntl_t;              /* should contain more stuff *//* access modes */#define ADIO_CREATE              1#define ADIO_RDONLY              2#define ADIO_WRONLY              4#define ADIO_RDWR                8#define ADIO_DELETE_ON_CLOSE     16#define ADIO_UNIQUE_OPEN         32#define ADIO_EXCL                64#define ADIO_APPEND             128#define ADIO_SEQUENTIAL         256/* file-pointer types */#define ADIO_EXPLICIT_OFFSET     100#define ADIO_INDIVIDUAL          101#define ADIO_SHARED              102#define ADIO_REQUEST_NULL        ((ADIO_Request) 0)#define ADIO_FILE_NULL           ((ADIO_File) 0)/* file systems */#define ADIO_NFS                 150#define ADIO_PIOFS               151   /* IBM */#define ADIO_UFS                 152   /* Unix file system */#define ADIO_PFS                 153   /* Intel */#define ADIO_XFS                 154   /* SGI */#define ADIO_HFS                 155   /* HP/Convex */#define ADIO_SFS                 156   /* NEC */#define ADIO_PVFS                157   /* PVFS for Linux Clusters from Clemson Univ. */#define ADIO_NTFS                158   /* NTFS for Windows NT */#define ADIO_TESTFS              159   /* fake file system for testing */#define ADIO_PVFS2               160   /* PVFS2: 2nd generation PVFS */#define ADIO_PANFS               161   /* Panasas FS */#define ADIO_GRIDFTP             162   /* Globus GridFTP */#define ADIO_LUSTRE              163   /* Lustre */#define ADIO_BGL                 164   /* IBM BGL */#define ADIO_BGLOCKLESS          165   /* IBM BGL (lock-free) */#define ADIO_SEEK_SET            SEEK_SET#define ADIO_SEEK_CUR            SEEK_CUR#define ADIO_SEEK_END            SEEK_END#define ADIO_FCNTL_SET_ATOMICITY 180#define ADIO_FCNTL_SET_DISKSPACE 188#define ADIO_FCNTL_GET_FSIZE     200/* for default file permissions */#define ADIO_PERM_NULL           -1#define ADIOI_FILE_COOKIE 2487376#define ADIOI_REQ_COOKIE 3493740/* ADIO function prototypes *//* all these may not be necessary, as many of them are macro replaced to    function pointers that point to the appropriate functions for each   different file system (in adioi.h), but anyway... */void ADIO_Init(int *argc, char ***argv, int *error_code);void ADIO_End(int *error_code);MPI_File ADIO_Open(MPI_Comm orig_comm, MPI_Comm comm, char *filename, 		   int file_system, ADIOI_Fns *ops,		   int access_mode, ADIO_Offset disp, MPI_Datatype etype, 		   MPI_Datatype filetype, 		   MPI_Info info, int perm, int *error_code);void ADIO_ImmediateOpen(ADIO_File fd, int *error_code);void ADIO_Close(ADIO_File fd, int *error_code);void ADIO_ReadContig(ADIO_File fd, void *buf, int count, MPI_Datatype datatype,                    int file_ptr_type,  ADIO_Offset offset,                     ADIO_Status *status, int *error_code);void ADIO_WriteContig(ADIO_File fd, void *buf, int count,                      MPI_Datatype datatype, int file_ptr_type,                      ADIO_Offset offset, int *bytes_written, int		      *error_code);void ADIO_IwriteContig(ADIO_File fd, void *buf, int count,                       MPI_Datatype datatype, int file_ptr_type,                      ADIO_Offset offset, ADIO_Request *request, int		      *error_code);   void ADIO_IreadContig(ADIO_File fd, void *buf, int count,                       MPI_Datatype datatype, int file_ptr_type,                      ADIO_Offset offset, ADIO_Request *request, int		      *error_code);   int ADIO_ReadDone(ADIO_Request *request, ADIO_Status *status,                int *error_code);int ADIO_WriteDone(ADIO_Request *request, ADIO_Status *status,                int *error_code);int ADIO_ReadIcomplete(ADIO_Request *request, ADIO_Status *status, int		       *error_code); int ADIO_WriteIcomplete(ADIO_Request *request, ADIO_Status *status,			int *error_code); void ADIO_ReadComplete(ADIO_Request *request, ADIO_Status *status, int		       *error_code); void ADIO_WriteComplete(ADIO_Request *request, ADIO_Status *status,			int *error_code); void ADIO_Fcntl(ADIO_File fd, int flag, ADIO_Fcntl_t *fcntl_struct, int		*error_code); void ADIO_ReadStrided(ADIO_File fd, void *buf, int count,		       MPI_Datatype datatype, int file_ptr_type,		       ADIO_Offset offset, ADIO_Status *status, int		       *error_code);void ADIO_WriteStrided(ADIO_File fd, void *buf, int count,		       MPI_Datatype datatype, int file_ptr_type,		       ADIO_Offset offset, ADIO_Status *status, int		       *error_code);void ADIO_ReadStridedColl(ADIO_File fd, void *buf, int count,		       MPI_Datatype datatype, int file_ptr_type,		       ADIO_Offset offset, ADIO_Status *status, int		       *error_code);void ADIO_WriteStridedColl(ADIO_File fd, void *buf, int count,		       MPI_Datatype datatype, int file_ptr_type,		       ADIO_Offset offset, ADIO_Status *status, int		       *error_code);void ADIO_IreadStrided(ADIO_File fd, void *buf, int count,		       MPI_Datatype datatype, int file_ptr_type,		       ADIO_Offset offset, ADIO_Request *request, int		       *error_code);void ADIO_IwriteStrided(ADIO_File fd, void *buf, int count,		       MPI_Datatype datatype, int file_ptr_type,		       ADIO_Offset offset, ADIO_Request *request, int		       *error_code);ADIO_Offset ADIO_SeekIndividual(ADIO_File fd, ADIO_Offset offset,                        int whence, int *error_code);void ADIO_Delete(char *filename, int *error_code);void ADIO_Flush(ADIO_File fd, int *error_code);void ADIO_Resize(ADIO_File fd, ADIO_Offset size, int *error_code);void ADIO_SetInfo(ADIO_File fd, MPI_Info users_info, int *error_code);void ADIO_ResolveFileType(MPI_Comm comm, char *filename, int *fstype,           ADIOI_Fns **ops, int *error_code);void ADIO_Get_shared_fp(ADIO_File fd, int size, ADIO_Offset *shared_fp, 			 int *error_code);void ADIO_Set_shared_fp(ADIO_File fd, ADIO_Offset offset, int *error_code);void ADIO_Set_view(ADIO_File fd, ADIO_Offset disp, MPI_Datatype etype, 		MPI_Datatype filetype, MPI_Info info,  int *error_code);/* functions to help deal with the array datatypes */int ADIO_Type_create_subarray(int ndims,                              int *array_of_sizes,                              int *array_of_subsizes,                              int *array_of_starts,                              int order,                              MPI_Datatype oldtype,                              MPI_Datatype *newtype);int ADIO_Type_create_darray(int size, int rank, int ndims, 			    int *array_of_gsizes, int *array_of_distribs, 			    int *array_of_dargs, int *array_of_psizes, 			    int order, MPI_Datatype oldtype, 			    MPI_Datatype *newtype);/* MPI_File management functions (in mpio_file.c) */MPI_File MPIO_File_create(int size);ADIO_File MPIO_File_resolve(MPI_File mpi_fh);void MPIO_File_free(MPI_File *mpi_fh);MPI_File MPIO_File_f2c(MPI_Fint fh);MPI_Fint MPIO_File_c2f(MPI_File fh);int MPIO_Err_create_code(int lastcode, int fatal, const char fcname[],			 int line, int error_class, const char generic_msg[],			 const char specific_msg[], ... );int MPIO_Err_return_file(MPI_File mpi_fh, int error_code);int MPIO_Err_return_comm(MPI_Comm mpi_comm, int error_code);/* request managment helper functions */void MPIO_Completed_request_create(MPI_File *fh, MPI_Offset nbytes,		int * error_code, MPI_Request *request);#include "adioi.h"#include "adioi_fs_proto.h"#include "mpio_error.h"#include "mpipr.h"/* these two defines don't appear to be in any other header file */#define MPIR_ERR_FATAL 1#define MPIR_ERR_RECOVERABLE 0#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -