Photolysis tables

Alex Archibald has suggested that rather than running FASTJX it might be much more computationally efficient to use the photolysis tables instead. The instructions for doing this are at https://code.metoffice.gov.uk/trac/UKESM/wiki/ticket/707/create_jobs_photolysis and I've run

  • u-bw526: UKESM AMIP benchmark
  • u-bw695: Same as above but using ASCII photolysis table
  • u-bw702: Same as above but using binary photolysis table

Getting the photolysis tables to work involved some significant bodging. About 30 files were missing, so I use symoblic links to jo2.dat for these missing files to get u-bw695 and u-bw702 to run for one month. Hence, the science for these runs is bound to be rubbish, but hopefully this is sufficient for a reasonable computational test.

Benchmark, u-bw526 ASCII photolysis table, u-bw695 Binary photolysis table, u-bw702
UM_SHELL 2907s 2753s 2793s
UKCA_MAIN1 466s 355s 363s
UKCA_FASTJX or UKCA_STRAT_PHOTOL 114s 23s 23s

The table above shows that using photolysis tables reduces photolysis to a small computation - around 23s. It was about 114s, which is 24% of the total time in UKCA_MAIN1 (466s) and 3.1% of total runtime (2907s). And it's reduced to 23s, which is about 4.9%/6.5% of the total time in new/original UKCA_MAIN1 (466s/355s), and is about 0.8% of total runtime. Hence, it's saved about 2.3% on the total runtime.

We'd expect reading a binary file to be quicker than ascii (u-bw702 versus u-bw695), but for small files then most of the time is probably opening the file anyway. Hence, not surprising that we're not seeing a difference between u-bw695 and u-bw702.