Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

CDF (Common Data Format) is a file format frequently used to store multidimensional data in a self describing data format.

In E3SM we currently store all input and output files in the CDF format. These input and output files are processed by PIO using NetCDF and PnetCDF libraries. Moreover, some of the input files are generated by other third party libraries/software packages that support the CDF file format.

Since different libraries implement the CDF file format, bugs/issues in the implementation can create/process files that are not CDF compatible or valid. So for example, an invalid CDF file that can be processed (read) by NetCDF may not work with PnetCDF. Please use the steps below to test for the validity of a CDF file (When creating input files please use the steps below to ensure that PIO can process the input files).

The PnetCDF library provides a utility, ncvalidator, to check if a file is a valid CDF file. Use the ncvalidator tool to check if a file is a valid CDF file. The tool prints out detailed information on any compatibility issues with CDF.

The newer versions of PnetCDF provide an option, -x, to ncvalidator to correct a frequently occurring CDF compatibility issue (null byte padding in the header). Use this option to see if you can resolve the CDF compatibility issue. Note that using this option will modify the input file.

On Anvil (Blues login node), we have PnetCDF 1.9.0 installed at /lcrc/group/acme/soft/pnetcdf/1.9.0/intel-17.0.0/mvapich2-2.2 and the ncvalidator tool is available at /lcrc/group/acme/soft/pnetcdf/1.9.0/intel-17.0.0/mvapich2-2.2/bin/ncvalidator .

  • No labels