sync in ncmpi_end_indep_data()
Robert Latham
robl at mcs.anl.gov
Thu Sep 20 15:50:30 CDT 2007
On Thu, Sep 20, 2007 at 02:46:47PM -0500, Wei-keng Liao wrote:
> In file mpinetcdf.c, function ncmpi_end_indep_data(), MPI_File_sync() is
> called. I don't think this is necessary. Flushing dirty data may be needed
> if pnetcdf implemented a caching layer internally. However, this file sync
> should be flusing data from pnetcdf caching layer (if it is implemented)
> to the file system, not application clients to the file servers (or disks)
> as MPI_File_sync() will do.
>
> This file sync makes IOR performance bad for pnetcdf independent data
> mode.
What if an independent write was followed by a collective read? I
think we covered this earlier in the year. The NetCDF semantic for
this seems to be undefined. If so, then I guess the MPI_File_sync is
indeed unnecessary. The sync in there might be to enforce conclusion
of a "write sequence" and ensure changes made to the file by other
processes are visible to that process.
pnetcdf could be clever when a file is opened NC_NOWRITE and disable
that sync.
==rob
--
Rob Latham
Mathematics and Computer Science Division A215 0178 EA2D B059 8CDF
Argonne National Lab, IL USA B29D F333 664A 4280 315B
More information about the parallel-netcdf
mailing list