Bug#749859: netcdf: Please increase size of netcdf models for exodus

Sebastiaan Couwenberg sebastic at xs4all.nl
Sun Nov 8 19:52:55 UTC 2015


notfound 749859 4.2.1+
found 749859 netcdf/1:4.3.3.1+ds-1~exp1
tags 749859 upstream
thanks

Hi Alastair,

On 30-05-14 11:36, Alastair McKinstry wrote:
> The netcdf library must be modified slightly in order to handle the
> exodus datamodel. The specific changes are:
> 
> 1. include/netcdf.h -- Modify the following defines:
> 
> #define NC_MAX_DIMS     65536    /* max dimensions per file */
> #define NC_MAX_VARS     524288   /* max variables per file */
> #define NC_MAX_VAR_DIMS 8        /* max per variable dimensions */
> 
> If these changes are not made, the exodus library will still function
> for "normal" size models, but it will fail for "large" models. The
> error message from exodus/netcdf should be somewhat clear when this
> happens...

As you know, we have NetCDF 4.4.0~rc2 in testing/unstable for some time
now. While that meets the 4.2.1 version requirements, but not the
NC_MAX_* values:

/**
Maximum for classic library.

In the classic netCDF model there are maximum values for the number of
dimensions in the file (\ref NC_MAX_DIMS), the number of global or per
variable attributes (\ref NC_MAX_ATTRS), the number of variables in
the file (\ref NC_MAX_VARS), and the length of a name (\ref
NC_MAX_NAME).

These maximums are enforced by the interface, to facilitate writing
applications and utilities.  However, nothing is statically allocated
to these sizes internally.

These maximums are not used for netCDF-4/HDF5 files unless they were
created with the ::NC_CLASSIC_MODEL flag.

As a rule, NC_MAX_VAR_DIMS <= NC_MAX_DIMS.
*/
/**@{*/
#define NC_MAX_DIMS     1024
#define NC_MAX_ATTRS    8192
#define NC_MAX_VARS     8192
#define NC_MAX_NAME     256
#define NC_MAX_VAR_DIMS 1024 /**< max per variable dimensions */
/**@}*/


I'm not comfortable changing these values, because I cannot oversee the
impact.

How common are the "large" models? Is it not a very specialised use case?

Kind Regards,

Bas

-- 
 GPG Key ID: 4096R/6750F10AE88D4AF1
Fingerprint: 8182 DE41 7056 408D 6146  50D1 6750 F10A E88D 4AF1



More information about the Pkg-grass-devel mailing list