-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix requested chunk cache size when appending #8
Conversation
@RussTreadon-NOAA @aerorahul @hu5970 Could you review this PR, please? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Changes are straight forward. A few questions
- Does decreasing
cache_nelems
from 16777216 to 16384 impact the wall time of apps which use ncdiag? I'm thinking ofgsi.x
andncdiag_cat_serial.x
. - While the change impacts appending files, will apps such as
enkf.x
see any impact on memory usage or wall time when reading netcdf diagnostic files created by the updated ncdiag?
Approve assuming proposed change has been tested and found to adequately address stated problem.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you @DavidHuber-NOAA for addressing GSI related issues with newer libraries and compilers.
There may be some difference, but it seems small. The entire appending process occurs twice for the global_4denvar test case. The total runtime increased from 366s to 375s, but this could just be noise. It is possible that this is more noticeable at higher resolutions. I will run a C384 case and see if there is any marked difference.
No, this parameter does not affect the output diagnostic files. It must be specified at runtime to change the way a file is processed. Since the ncdiag read functions do not specify |
Thank you @DavidHuber-NOAA for answering my questions. |
@aerorahul Could you please create a tag for this, version v1.1.2? |
Done. |
The requested HDF5 chunk cache size was set to 16GB when appending to preexistent diagnostic netCDF files. This resulted in memory allocations > 5GB/PE in some cases, which could overallocate a Hera or Orion compute node and thus caused GSI regression tests to fail. This was not an issue with HDF5 v1.10.6 (not sure why) , but is with 1.14.0.
The default is 1MB. I assumed the intent was to set a size of 16MB. All GSI regression tests now pass their
memthresh
andmaxmem
tests.Fixes #7