CICE-Consortium / CICE

Development repository for the CICE sea-ice model
Other
60 stars 132 forks source link

Test various restart formats and add Derecho port that uses pio spack #933

Open apcraig opened 9 months ago

apcraig commented 9 months ago

As a followup to #928, it might be useful to generate several versions (cdf1, cdf2, cdf5, hdf5) of the CICE test restart file and test the ability of the code to read those formats and be bit-for-bit reproducible between them.

Also, a slightly separate task. It would be good to implement a Derecho port that uses the spack pio install instead of the version build on Derecho. This would probably be a new "machine".

anton-seaice commented 9 months ago

As a followup to #928, it might be useful to generate several versions (cdf1, cdf2, cdf5, hdf5) of the CICE test restart file and test the ability of the code to read those formats and be bit-for-bit reproducible between them.

This could be a good candidate for a unit test, (I haven't looked at all at the current unit tests or how they are set up.). In theory, we can assume the pio + nc interfaces work and are tested, so this can focus more on whether the writing and reading of restart files produces identical results.

Also, a slightly separate task. It would be good to implement a Derecho port that uses the spack pio install instead of the version build on Derecho. This would probably be a new "machine".

Spack and building from source should give identical results. The difference we found is because the build options are different (i.e. whether parallel-netcdf is included.). This gets tricky - because there are hundreds of combinations of build options and library versions etc within the goal of maintaining backward compatibility. One approach might be to try and get a representative sample of the possible variations. Another might be to focus on the up to date / latest stable versions + options and focus on those.