The function NF_VAR_PAR_ACCESS changes whether read/write operations on a parallel file system are performed collectively (the default) or independently on the variable. This function can only be called if the file was created with NF_CREATE_PAR (see NF_CREATE_PAR) or opened with NF_OPEN_PAR (see NF_OPEN_PAR).
This function is only available if the netCDF library was built with a HDF5 library for which –enable-parallel was used, and which was linked (like HDF5) to MPI libraries.
Calling this function affects only the open file - information about whether a variable is to be accessed collectively or independently is not written to the data file. Every time you open a file on a parallel file system, all variables default to collective operations. The change a variable to independent lasts only as long as that file is open.
The variable can be changed from collective to independent, and back, as often as desired.
INTEGER NF_VAR_PAR_ACCESS(INTEGER NCID, INTEGER VARID, INTEGER ACCESS);
NCID
varid
access
NF_NOERR
NF_ENOTVAR
NF_ENOTNC4
NF_NOPAR
This example comes from test program nf_test/ftst_parallel.F. For this test to be run, netCDF must have been built with a parallel-enabled HDF5, and –enable-parallel-tests must have been used when configuring netcdf.
retval = nf_var_par_access(ncid, varid, nf_collective) if (retval .ne. nf_noerr) stop 2