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

MPI_FILE_READ_ALL是一个组调用,与句柄fh相联系的进程组中的所有进程都要执行此调用,它如同进程组内的所有进程都执行了一个MPI_FILE_READ调用一样,从视口文件中读取count个数据类型为datatype的数据,放到缓冲区buf中,status是返回的状态参数。
注意这里不同进程所使用的视口文件指针是不同的,调用结束后各个视口文件的指针都自动指向本视口下一个基本数据单元的位置。

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

MPI_FILE_WRITE_ALL也是组调用,和MPI_FILE_READ_ALL相对应,一个是读,一个是写。与句柄fh相联系的进程组中的所有进程都要执行此调用,它如同进程组内的所有进程都执行了一个MPI_FILE_WRITE调用一样,将数据缓冲区buf中的count个数据类型为datatype的数据数据,写入到视口文件中,status是返回的状态参数。
各进程写入的位置可以是互不相同的,因为不同进程所使用的视口文件指针是独立的,调用结束后各个视口文件的指针都自动指向本视口下一个基本数据单元的位置。