Replies: 1 comment
|
delving into some more implementation tracing, it appears that opening with The first call I trace for this file path is :... seemingly able to open the HDF5 encoded netCDF file. So, I'm now exploring this as a difference between |
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
hello Unidata netCDF folks
I'm in the process of performance & scalability analysing a parallel processing simulation code base using netCDF, HDF5 & MPI.
As part of exploring the I/O patterns inherent in the code, I am counting and tracing open calls.
A pattern which appears to be repeating when
nc_open_paris used, is that each open call appears to be interpreted as two file system calls, in quick succession.The first is calling
nc_open_parbut not calling HDF5The second is calling
nc_open_parwhich is then calling HDF5Am I reading this right?
for example:
Is the
netcdf-cimplementationalways:HDF5encoded file,HDF5?
If so, is it plausible and/or sensible to pre-assert that the file should be opened using
HDF5? (error if it fails?)( nc_open && nc_open_par both take an
omodeargument, but thisomodeis not as rich as nc_create'scmode, which can also define encoding:NC_NETCDF4 causes netCDF to create a HDF5/NetCDF-4 file)For large
MPI_Comm_Worldcounts usingMPI-IOand communicating with parallel file systems that manage metadata servers and object stores, then such a pattern could bring a small amount of relief from high load scenarios.Is it possible to do this already within
netcdf-c&netcdf-fortran?If not, could this be a valid feature development?
Has this been looked into in the past and deemed problematic? ... unnecessary?
many thanks
mark
All reactions