Closed apcraig closed 2 days ago
I ran a full test suite on Derecho with intel, gnu, cray, nvhpc, intelclassic, and inteloneapi compilers. All tests pass and are bit-for-bit except bgc tests. All bgc tests change answers (as expected) and 8 of the 36 bgc tests do not run (see below). The bgcsklnice test fails on 4/6 compilers. The cray compiler runs the bgcsklnice cases but fails on the bgcispol and bgcnice cases. See https://github.com/CICE-Consortium/Test-Results/wiki/icepack_by_hash_forks#3a8b2f99c8f6d30837ca9645ce0a31bb912eb0f3.
PASS derecho_intel_smoke_col_1x1_bgcispol_debug test
PASS derecho_intel_smoke_col_1x1_bgcnice_debug test
FAIL derecho_intel_smoke_col_1x1_bgcsklnice_debug test
PASS derecho_intel_restart_col_1x1_bgcispol test
PASS derecho_intel_restart_col_1x1_bgcnice test
PASS derecho_intel_restart_col_1x1_bgcsklnice test
FAIL derecho_cray_smoke_col_1x1_bgcispol_debug test
FAIL derecho_cray_smoke_col_1x1_bgcnice_debug test
PASS derecho_cray_smoke_col_1x1_bgcsklnice_debug test
FAIL derecho_cray_restart_col_1x1_bgcispol test
FAIL derecho_cray_restart_col_1x1_bgcnice test
PASS derecho_cray_restart_col_1x1_bgcsklnice test
PASS derecho_gnu_smoke_col_1x1_bgcispol_debug test
PASS derecho_gnu_smoke_col_1x1_bgcnice_debug test
FAIL derecho_gnu_smoke_col_1x1_bgcsklnice_debug test
PASS derecho_gnu_restart_col_1x1_bgcispol test
PASS derecho_gnu_restart_col_1x1_bgcnice test
PASS derecho_gnu_restart_col_1x1_bgcsklnice test
PASS derecho_nvhpc_smoke_col_1x1_bgcispol_debug test
PASS derecho_nvhpc_smoke_col_1x1_bgcnice_debug test
PASS derecho_nvhpc_smoke_col_1x1_bgcsklnice_debug test
PASS derecho_nvhpc_restart_col_1x1_bgcispol test
PASS derecho_nvhpc_restart_col_1x1_bgcnice test
PASS derecho_nvhpc_restart_col_1x1_bgcsklnice test
PASS derecho_intelclassic_smoke_col_1x1_bgcispol_debug test
PASS derecho_intelclassic_smoke_col_1x1_bgcnice_debug test
FAIL derecho_intelclassic_smoke_col_1x1_bgcsklnice_debug test
PASS derecho_intelclassic_restart_col_1x1_bgcispol test
PASS derecho_intelclassic_restart_col_1x1_bgcnice test
PASS derecho_intelclassic_restart_col_1x1_bgcsklnice test
PASS derecho_inteloneapi_smoke_col_1x1_bgcispol_debug test
PASS derecho_inteloneapi_smoke_col_1x1_bgcnice_debug test
FAIL derecho_inteloneapi_smoke_col_1x1_bgcsklnice_debug test
PASS derecho_inteloneapi_restart_col_1x1_bgcispol test
PASS derecho_inteloneapi_restart_col_1x1_bgcnice test
PASS derecho_inteloneapi_restart_col_1x1_bgcsklnice test
I have updated the three bgc parameters and fixed some of the documentation problems. With regard to the boxes on the PR page, I think most are done. I will do some final testing as we approach the merge, but testing is now working well. Will we want a new validation run, three bgc parameters have changed values? Finally, while skl is currently deprecated on the branch, do we want to continue to work on that?
I ran a full test suite last night on Derecho with 5 or 6 compilers for Icepack and CICE. The test results look good. So, I think we're close and this is where we are
@apcraig & @eclare108213 : I'll do some testing of the zaerosol only case from the E3SM side and see if I can reproduce the conservation errors. chrysalis is slow, though. I don't know that this PR should wait.
Thanks @njeffery. With the zaerosol test, does the snow need to be on or off or maybe either?
Both should work. I'm testing with the snow on.
I have added zaero configuration and tests. I ran with both snow on and off, both run to completion in Icepack and CICE but all zaero tests generate conservation errors. But the new tests are running and have been added which I think is good.
@apcraig : Great! thanks for adding those tests.
My E3SM ocean-ice test case with zaeros active but no sea ice bgc has gone 4 years without any error messages. When do the error messages first appear in Icepack? I'm wondering if there is an initial condition problem for the Icepack test cases.
OK, I think this could be ready to merge.
@njeffery, @eclare108213, please approve this and the CICE PR if you think they are ready to merge.
@njeffery. The conservation errors appear at every timestep in Icepack and CICE with the zaero configuration. I did a test last week where I set the zaero forcing to 0 by changing
faero_atm(:,:,1,:) = 1.e-12_dbl_kind ! kg/m^2 s
faero_atm(:,:,2,:) = 1.e-13_dbl_kind
faero_atm(:,:,3,:) = 1.e-14_dbl_kind
faero_atm(:,:,4,:) = 1.e-14_dbl_kind
faero_atm(:,:,5,:) = 1.e-14_dbl_kind
faero_atm(:,:,6,:) = 1.e-14_dbl_kind
to
faero_atm = 0.0_dbl_kind
The conservation errors went away. Of coarse, the aerosol tracer remained identically zero throughout as well, so maybe not very useful.
Could it be that something about HOW I'm running the cases is incorrect. I will send output from those cases via email separately.
The conservation errors have been fixed. I needed to run nblyr=7 instead of 1. That has been checked in and the zaero cases are now running with NO conservation errors.
Awesome!
PR checklist
This is a significant update in the BGC including refactoring Icepack interfaces.
We still need to
Closes #180