为什么使用MPI_File_open而不是fopen

Why use MPI_File_open instead of fopen?

本文关键字:fopen open File MPI 为什么      更新时间:2023-10-16

阅读MPI文档后,听起来这根本没有给您任何额外的功能。我假设它协调网络流量,使所有文件操作都与执行系统(发出mpirun命令的系统)上的给定文件一起工作,而不是在每个主机上使用本地文件系统。这将是有用的。相反,"用户"需要确保它们最终都在同一个文件中。很明显,他们没有就这个文件进行太多沟通。。。是吗?

MPI_File_open的实际作用是什么?它的好处是什么?为什么我不应该只使用fopen?

当然,MPI_File_open允许您像使用fopen一样在特定块上查找和读/写,在这种情况下,每个进程都有一个专用文件指针。与fopen的不同之处在于,非阻塞IO方法允许程序在不等待操作完成的情况下继续执行。MPI还支持共享文件指针(例如MPI_file_read_shared),尽管显然使用共享指针会带来同步开销。