[hdf-forum] Netcdf large file support

Robert Latham robl at mcs.anl.gov
Mon Feb 9 08:11:12 CST 2009


On Sun, Feb 08, 2009 at 09:49:38PM -0600, Nikhil Laghave wrote:
> I am trying to create files larger than 2 GB using pnetcdf, but the 
> application crashes. I understand I need to use NF_64BIT_OFFSET flag in the 
> nfmpi_create call, but I do not know how to pass this argument. This may seem 
> a very silly question. I am sorry about that.
> 
> In C I think we need to pass NC_64BIT_OFFSET | NC_CLOBBER, but similar 
> approach does not work with fortran. Can some one send me an example of the 
> API for fortran?
> 
> Right now, this is how I am making the call, which is not working.
>       retval = nfmpi_create(comm, "nikhil.nc",NF_64BIT_OFFSET,
>      &     info, ncid)
> 

Hi Nikhil

I think you probably meant this to go to the parallel-netcdf list,
right?  I copied both lists so people know I answered you, but let's
follow up to just parallel-netcdf for the rest of this thread.

I'm not a fortran guy, but what I think what you want to do is define
an integer 'flags' and then add NF_64BIT_OFFSET and NF_CLOBBER
to that flags variable.

integer flags
flags = NF_CLOBBER + NF_64BIT_OFFSET
nfmpi_create(comm, "foo.nc", flags, info, ncid)

what does your application crash look like?  I would hope that we
catch invalid flags at nfmpi_create time, and not later on.  Can you
'nfmpi_strerror' the return code?

==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