MPI_FILE_READ_ORDERED(fh, buf, count, datatype, status)
INOUTfh共享文件的句柄
OUTbuf 读取数据存放的缓冲区
IN count 读取数据的个数
IN datatype读取数据的数据类型
OUTstatus该调用返回的状态信息
int MPI_File_read_ordered(MPI_File fh, void * buf, int count, MPI_Datatype datatype,
MPI_Status * status)
MPI_FILE_READ_ORDERED(FH, BUF, COUNT, DATATYPE, STATUS, IERROR)
<type> BUF(*)
INTEGER FH, COUNT, DATATYPE, STATUS(MPI_STATUS_SIZE), IERROR

MPI_FILE_READ_ORDERED调用是组调用,就如同每一个进程组内的进程都执行了一个MPI_FILE_READ_SHARED调用。各个进程对共享文件的读取是按续进行的,根据各个进程的rank标识,从小到大,0,1,...,N-1 号进程依次对文件进行读取。上一个进程读取完成后,文件指针自动指向下一个数据单元的位置,每个进程都是从共同的文件视口中读取count个datatype数据类型的数据,存放到各自的buf中。其中status是返回的状态信息。

MPI_FILE_WRITE_ORDERED(fh, buf, count, datatype, status)
INOUTfh视口文件句柄
IN buf 写入数据存放的缓冲区
IN count 写入数据个数
IN datatype写入数据的数据类型
OUTstatus返回的状态信息
int MPI_File_write_ordered(MPI_File fh, void * buf, int count, MPI_Datatype datatype,
MPI_Status * status)
MPI_FILE_WRITE_ORDERED(FH, BUF, COUNT, DATATYPE, STATUS, IERROR)
<type> BUF(*)
INTEGER FH, COUNT, DATATYPE, STATUS(MPI_STATUS_SIZE), IERROR

MPI_FILE_WRITE_ORDERED调用是组调用,就如同每一个进程组内的进程都执行了一个MPI_FILE_WRITE_SHARED调用。各个进程对共享文件的写入是按续进行的,根据各个进程的rank标识,从小到大,0,1,...,N-1 号进程依次对文件进行写入。上一个进程写入完成后,文件指针自动指向下一个数据单元的位置,每个进程都是向共同的文件视口中写入存放在各自buf中的count个datatype数据类型的数据。其中status是返回的状态信息。