For the Backward-Euler and Newton-Raphson runs the tracers have been advected through both EG_CORRECT_TRACERS and EG_CORRECT_TRACERS_UKCA - effectively twice, when this should only be done through EG_CORRECT_TRACERS_UKCA. Mohit has written a new branch to correct this (although the last change in eg_correct_tracers_ukca.F90 does require high_order_schem changing to high_order_scheme.
My run for 4 months (the latest facec), suggested the output is the same as before (/data/cr/ukesm/facec29_7_14).
This changed hasn't noticeably altered the time taking in EG_CORRECT_TRACERS_UKCA (it's 168s total time), as you'd expect, but the total time in EG_CORRECT_TRACERS has been reduced from 214s to 28s - a saving of 186s. The table below gives the total time devoted to tracer advection.
Run | Routines used for tracer advection | Time |
---|---|---|
Old Backward-Euler (facec29_7_14) | EG_CORRECT_TRACERS + EG_CORRECT_TRACERS_UKCA | 214s + 167s = 381s |
CLASSIC (faced) | EG_CORRECT_TRACERS | 112s |
Backward-Euler with Mohit's advection fix (facec) | EG_CORRECT_TRACERS + EG_CORRECT_TRACERS_UKCA | 28s + 168s = 196s |
With the advection fix, the tracer advection in the Backward-Euler run is 84s more than CLASSIC, about 75% more.
After applying the Mohit's tracer advection fix an update of the summary at the bottom of the Comparing the Backward-Euler profiles with CLAISSIC page, which gives the main reason why the Backward-Euler run is slower, is
No UKCA_MAIN1 | 1,464s |
Extra time in SWAP_* routines (extra fields) | 286s+ |
No UKCA_RADAER_BAND_AVERAGE | 272s |
A big reduction in the use of LSP_SUBGRID (including LSP_QCLEAR and an average of 166 million calls to QWIDTH) | 101s |
Combined UKCA_CORRECT_TRACERS_UKCA + EG_CORRECT_TRACERS is greater than CLASSIC's EG_CORRECT_TRACERS (mostly because more fields are being advected) | 84s |
Total | 2,207s+ |
---|