Comments (9)
Hi, I have checked the netcdf version 4.1.3 and I find that the NF_DEF_VAR_DEFLATE is a netcdff-77 function. The usage of it is to deflate the variable to a small storage. However, there are two prerequisites to use this function. First, the variable to be deflated must has a netCDF-4 feature. Second, this function can't be used when using parallel I/O for writing data.
from isca.
OK - thanks @wanglei5212749. That's good to know. Given that this function compiles OK with later NETCDF versions, do you think those requirements changed between NETCDF versions?
from isca.
In my view, most of the climate models use a parallel I/O for writing data. And sometimes we use "--disable-netcdf-4" parameter when compile netcdf to avoid some library conflicts. This means we just build a netCDF-3 library without support for the netCDF-4 formats or functions(see here: https://www.unidata.ucar.edu/software/netcdf/docs/getting_and_building_netcdf.html).
In any of this two conditions, we can not use NF_DEF_VAR_DEFLATE function because the interface of NF_DEF_VAR_DEFLATE is not existing in the netcdf library we compiled. and it will cause a compile-error when we compile the model.
from isca.
To avoid this error, We have two ways. (1)we can recompile the netcdf library we used to make it support for the netCDF-4 formats or functions(But still not use the parallel I/O for writing data). (2)we just comment this line to avoid the compile-error and this will not cause any difference to the model simulation performance except that it may have a little large disk storage. Also we can just comment the usage of #ifndef use_netCDF3 directly to avoid the compile-error.
from isca.
OK - thanks @wanglei5212749. That's good to know. Given that this function compiles OK with later NETCDF versions, do you think those requirements changed between NETCDF versions?
In this condition, I think this problem has little relationship with the version we used, But may be caused by that we don't have the netCDF-4 formats or functions supported. Maybe can be tested by another netcdf library with the netCDF-4 formats or functions supported to see if this compile-error still existed.
from isca.
I'm not sure I'm following exactly, but option (1) should be what happens normally, i.e. new netCDF features are supported but not used by default (e.g. for created output files). So maybe this is broken by --disable-netcdf-4
and a different workaround for the library conflicts is needed. (Have you tried --disable-dap
instead, mentioned in the documentation page linked to above?) According to git blame, the whole of mpp_io_write.inc is from the original GFDL import, so it hasn't changed in 3 years.
from isca.
Or under option (2), can you set the flag use_netCDF3
(matching the downgraded library) so that the #ifndef fails as intended?
from isca.
Or under option (2), can you set the flag
use_netCDF3
(matching the downgraded library) so that the #ifndef fails as intended?
Yes can set a definition for use_netCDF3 instead.
from isca.
We'll add a mention of this in the debug docs to help users who run into similar issues.
from isca.
Related Issues (20)
- Compile Errors with GCC version 10> HOT 2
- Compiling issue HOT 2
- Main front-page Readme should be updated with up-to-date installation instructions HOT 2
- gfortran float to integer type conversion problems HOT 2
- x86_64-conda-linux-gnu-cc can't find liblto_plugin.so on Ubuntu HOT 3
- Min/Max Time Averaging
- Compile issue, error with make HOT 2
- sh 2.0.0 breaks Isca installation HOT 3
- utime no longer a class in cftime
- Compiling ISCA on Mac laptop HOT 4
- Be careful with using the frierson_solar_rad option with Socrates.
- Compiling ISCA for the first time, issue with helpers.py HOT 10
- Is it possible to use Isca model to simulate atmoshperic responses to a diabatic heating source with a given seasonal background state?
- Should topography be blocking out portions of the atmosphere? HOT 4
- Compile Errors when running test (held_suarez_test_case.py) HOT 5
- Typo
- Socrates Test Case run failure
- Unable to achieve an Earth-like tsurf gradient using SOCRATES and and frierson_solar_rad = True HOT 2
- Segmentation fault caused by unset `tau` in "dry_convection_nml"
- Setup of Frierson test case needs to be looked at
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from isca.