Ошибка памяти с использованием ncks для установки времени в качестве измерения записи

Я пытаюсь использовать ncks, чтобы установить время как размер записи в большом (14 ГБ) файле, и получаю следующую ошибку

$ ncks -O --mk_rec_dmn time vorticity_1979_1.40625deg.nc test.nc
nco_def_var_chunking(): ERROR Total requested chunk size = 14926479360 exceeds netCDF 
maximium-supported chunk size = 4294967295
nco_err_exit(): ERROR Short NCO-generated message (usually name of function that triggered 
error): nco_def_var_chunking()
nco_err_exit(): ERROR Error code is -127. Translation into English with nc_strerror(-127) is 
"NetCDF: Bad chunk sizes."
nco_err_exit(): ERROR NCO will now exit with system call exit(EXIT_FAILURE)

person Manmeet Singh    schedule 10.10.2020    source источник


Ответы (2)


Я смог решить эту проблему с помощью следующей команды

ncks -6 -O --mk_rec_dmn time vorticity_1979_1.40625deg.nc test.nc
person Manmeet Singh    schedule 10.10.2020

Не уверен, почему он автоматически выбрал слишком большой размер блока. Изменение формата на netCDF-64 бит работает, потому что тогда разбиение на части не является проблемой. Я думаю, вы также можете сохранить формат как netCDF4, явно установив размер блока, например, один временной шаг с

ncks -O --cnk_dmn time,1 --mk_rec_dmn time vorticity_1979_1.40625deg.nc test.nc
person Charlie Zender    schedule 11.10.2020
comment
Я считаю, что причина, по которой он выбирает слишком большой размер блока, заключается в том, что это данные на 23 уровнях с часовыми интервалами с разрешением 1,4 градуса из ERA-5. Спасибо за предложение, попробую. - person Manmeet Singh; 11.10.2020