Due to the current gap in continued funding from the U.S. National Science Foundation (NSF), the NSF Unidata Program Center has temporarily paused most operations. See NSF Unidata Pause in Most Operations for details.

[netcdfgroup] 64-bit offset flag ignored by netcdf 4.3.3.1 for pnetcdf?

Howdy,

I have been using netcdf-c-4.3.1.1 (with a pnetcdf bug fix) for my weather 
model production runs, and just tried using 4.3.3.1 on a new system. I use the 
netcdf-4 interface to create a pnetcdf file, for which I pass the 64-bit offset 
bits:

  cmode  = ior(ior(NF90_PNETCDF,NF90_MPIIO),nf90_64bit_offset)
  status = nf90_create(filename, cmode, ncid, comm = my_comm, info = my_info)

I found that the files were being created as just "classic", however.

Wei-keng Liao found the problem in libsrc5/nc5dispatch.c, which had this:

75 #if 0
76     cmode &= (NC_WRITE | NC_NOCLOBBER | NC_LOCK | NC_SHARE | 
NC_64BIT_OFFSET);
77 #else
78     cmode &= (NC_WRITE | NC_NOCLOBBER | NC_LOCK | NC_SHARE );
79 #endif

which for whatever reason was clobbering the NC_64BIT_OFFSET bits. Is there any 
reason not to always use the first line, i.e., change this to "#if 1"? This is 
what I did, and it fixed the problem.

4.4.0-rc3 has the same issue in libsrcp/ncpdispatch.c (same line numbers). 
Shouldn't the first line (with "| NC_64BIT_OFFSET") be the default?

Cheers,

-- Ted

__________________________________________________________
| Edward Mansell <ted.mansell@xxxxxxxx>
| National Severe Storms Laboratory
|--------------------------------------------------------------
| "The contents of this message are mine personally and
| do not reflect any position of the U.S. Government or NOAA."
|--------------------------------------------------------------



  • 2015 messages navigation, sorted by:
    1. Thread
    2. Subject
    3. Author
    4. Date
    5. ↑ Table Of Contents
  • Search the netcdfgroup archives: