UKESM-fast ideas

Levels of options for speeding-up code

  1. Reduce time in one timestep
    • Reduce the number of tracers
      • We're currently running with ?? tracers. What can we get it down to.
      • Colin thinks a lot of the tracers can put into steady state
    • Reduce time in solvers
      • UKCA_AERO_CTL solver
        • Maybe we can reduce the tolerances?
        • Colin talked about re-writing this to have a convergence criteria. Is this doable in a reasonable timescale and will it help?
      • Chemistry solver (ASAD_SPMJPDRIV)
        • Can we apply Mohammed's speed-up to this (suppose to save about 20% as I remember)?
        • Can we reduce tolerances?
    • Other computational reductions
      • Maybe reduce nwbins from 20 (this should reduce time UKCA_ABDULRAZZAK_GHAN)
    • Can we reduce asymmetry? Really we need to speed-up the slowests PEs
      • I profile this to diagnose when asymmetry is worse (probably where there's sunlight, but we're not sure)
    • We could reduce the vertical levels
  2. Increase concurrency
    • Could we run UKCA a few steps earlier on a different thread?
  3. Reduce frequency of calls
    • Jane and Ben looked at calling UKCA every 2 or 3 hours.
    • Till has looked at calling the radiation less often
  4. Increase timestep
    • Till looked at this. I thought the problems would be at poles, but I believe Till says they were more in the Stratosphere.
  5. Run some components at lower resolution, i.e. Hybrid Model
    • If we do increase timestep in Snr, it might help to pass some of the dynamical core fields from Jnr->Snr near the poles (if poles are a problem).

Resource limit?

If we serious about UKESM-fast being a model the community can use, should we set a resource limit. Maybe around 40 nodes (1,440 cores).