Open truth-quark opened 3 months ago
The ESM 1.5 UM files normally have 64 bit data. CMIP6 requires 32 bit output and converting to 32 bit as soon as possible in the workflow saves space. Therefore the default should be 32 bit output.
However when debugging it can be useful to get the full 64 bit output so this is an option. It's not normally necessary in the standard post-processing workflow.
As of commit 120dc47, 64 to 32 bit conversion is a standalone function:
This only converts cube data
fields to 32 bit, about 2/3rds of the way through the workflow in cubewrite()
which is called by process()
:
when debugging it can be useful to get the full 64 bit output so this is an option. It's not normally necessary in the standard post-processing workflow.
@MartinDix the conversion call can be moved earlier in the workflow, although it's a RAM
vs disk space optimisation. I'm not sure if there are performance gains using 32 bit over 64 bit numpy
arrays on 64 bit systems.
Do you have any known requirements to do the conversion earlier in the workflow?
From https://github.com/ACCESS-NRI/access-esm1.5-configs/issues/3:
TODO:
what is the requirement here?TODO:
covert all fields from 64 to 32 bit if option selected?TODO:
what section of code does this correspond to?TODO:
side issue, could tie link this to adding deprecation warnings to NETCDF3, gently encouraging migration.