Coder Social home page Coder Social logo

Comments (8)

durack1 avatar durack1 commented on July 20, 2024

@dnadeau4 following our discussion today here are the discussion points:

  • What should defaults be, speed of read vs file sizes?
  • Should shuffling and chunking be enabled by default?
  • How should a user specify deflation (in the CMIP6_Amon.json tables) or in the CMOR3 driver file (my preference is driver file, the tables should only contain information not runtime options for CMOR3)

We'll need to consult with @taylor13 to finalize the default behavior of CMOR3

from cmor.

durack1 avatar durack1 commented on July 20, 2024

@doutriaux1 has comments about this - regarding "standards". Long story short, a user should be able to over-ride the Table default at runtime, however including the attributes deflate, deflate_level and shuffle in the Tables ensures that across variables the same default compression is applied regardless of whether the CMOR user is aware of the deflation functionality or not.

from cmor.

taylor13 avatar taylor13 commented on July 20, 2024

Balaji is strongly advising for us to check out performance issues. GFDL
has all but ruled out any sort of compression. We'll talk Wednesday.

On 6/6/16 12:40 PM, Paul J. Durack wrote:

@doutriaux1 https://github.com/doutriaux1 has comments about this -
regarding "standards". Long story short, a user should be able to
over-ride the Table default at runtime, however including the
attributes |deflate|, |deflate_level| and |shuffle| in the Tables
ensures that across variables the same default compression is applied
regardless of whether the CMOR user is aware of the deflation
functionality or not.


You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
#57 (comment), or
mute the thread
https://github.com/notifications/unsubscribe/AEwxn9qRjJFGX3eaq_1qtoZQCNIpUh3Fks5qJHefgaJpZM4Iqtd1.

from cmor.

durack1 avatar durack1 commented on July 20, 2024

@dnadeau4 has this implemented in 3.0.6 with the following (python) notation:

cmor.set_deflate(varid,1,1,1) ; # shuffle=1,deflate=1,deflate_level=1 ; CMOR 3.0.6+
cmor.write( ...

from cmor.

dnadeau4 avatar dnadeau4 commented on July 20, 2024

You can put the shuffle/deflation flag in the tables or call cmor.set_deflate. I have also add the API to C and Fortran. By default everything is netcdf3, I would like to default to netcdf4 with no compression.

from cmor.

durack1 avatar durack1 commented on July 20, 2024

@dnadeau4 I think defaulting to netcdf4 is a good idea - it is the requested format for CMIP6 as far as I know

from cmor.

durack1 avatar durack1 commented on July 20, 2024

Just FYI, here is what the file sizes look like using various deflate_level (level=X) flags with the AMIP boundary forcing datasets (1x1 lat/lon grid and 1752 timesteps):

variable cdms2 deflated CMOR3 no-deflation CMOR3 level=1 CMOR3 level=3 CMOR3 level=9
areacello 32.8KB 303.7KB 41.4KB - -
siconc 29.3MB 433.1MB 44.6MB 43.2MB 39.9MB
siconcbcs 75.2MB 433.1MB 73.0MB 72.3MB 69.6MB
tos 225.9MB 433.1MB 177.1MB 174.8MB 171.3MB
tosbcs 239.2MB 433.1MB 185.1MB 182.6MB 178.4MB

It would be useful to have associated timing/CPU load equivalents to validate the statement by Balaji

from cmor.

dnadeau4 avatar dnadeau4 commented on July 20, 2024

create test Test/cmor_speed_and_compression_03.py

from cmor.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.