nfmpi_create with NF_CLOBBER

Wei-keng Liao wkliao at ece.northwestern.edu
Sat Jun 9 21:06:21 CDT 2007


As defined in netCDF, when NF_CLOBBER, NC_CLOBBER is used in the cmode 
argument of nfmpi_create(), the file will be overwritten if it exists.

In mpincio.c,, function ncmpiio_create, I can see that in this case, the 
file is first deleted by MPI_File_delete() and later created by 
MPI_File_open().

Since MPI_File_delete() is non-collective, all MPI processes will try to 
delete the file simultaneously, which results in only one success and 
fail for all others.

Shouldn't it be done by just having one process call delete and others 
waiting at a MPI_Barrier()?


Wei-keng




More information about the parallel-netcdf mailing list