Use Cases for interacting with the UMUI Minutes from a meeting that discussed how we go about setting up Unified Model simulations
present: Charlotte Pascoe, Alan Iwi, Alison Pamment.
Who is the metafor CIM for? If you want to keep the data from a simulation you have made, so you can share it or know what it was all about 2 years down the line, then the metafor CIM needs to be able to describe it.
potential model: describes the whole model code… all the different choices of convection scheme, advection scheme etc that can be made.
composed model: describes which choice of convection scheme, advection scheme etc is going to be used.
configured model: the description now contains the value of the parameters used by the particular convection scheme, advection scheme etc.
deployed model: the description noe contains information about the computing resources that the model is going to use
The basic principle for Joe Bloggs running the unified model:
- Definitely start with a configured model: This is usually some kind of standard set up, ie pre-industrial control or 20th Century transient run.
- Put in the particular changes that you care about: tweeking a line of code or a parameter.
- Look to see if your change has made a difference to some aspect of the simulated domain.
Joe Bloggs needs to be able to say "I took such and such a run and this is all I changed"
In practice, the only time Joe would actually start with a potential model is if he were developing a new version of the model.
Some use cases provide by Alan Iwi:
Control Run: Take a standard control run and run it on a different machine keeping everything else the same.
Transient Run: ie. pre-industrial control spin up to the present day. Take an existing configuration for a time dependant GHG forcing run, use initial conditions form a pre industrial control and run the model. You never really bother about filling in all the parameter values yourself. Other people have already done the thinking about the time dependent forcing.
Initial Condition ensembles: No imposed change to forcings, just delta forcings to the Inital conditions, run the model
Volcano sensitivity: taking out Krakatoa (1883)
look at aerosol forcing mod
look at time series of the aerosol forcing mod
modify the time series of the aerosol forcing mod with a straight line in place of the Krakatoa peak.
run the model
"Run from existing executable"
This sort of simulation needs cross referencing to the initial UMUI setup
because there is no information here about what mods were included
The information the UMUI gives you is...UMUI basis file: description of the resolved model
list of files with Mods
identification of main code deck (ie UM5.1 or UM 6.2 etc)
Wouldn't it be great if the UM basis file had some kind of record of the history of changes
Changes that are not made with the standard UMUI model configuration but in a mod set to the code.
- Details of the mod are not in the UMUI.
- The only way to document these changes is to have a unique name for each modset.
- A window in the UMUI lists the mods that are to be included, this is a list of file names
(if the file for the mod does not exist it will not be included).
- There is no guarantee that files with the same filename contains the same code,
the UMUI has no info about the content of a mod only the filename.
- How much does mod file name versioning happen in practice? esp wrt bug fixing!
Modsets are included at compilation time when you submit the job and do a simulation.
Code compiled is standard fortran code with the modification applied.
Need to go to the person who wrote the mod to get the code
What is the HadCM3 Control?
Miranda is doing a HadCM3 control run but it crashes in year 40 so she tweeks some parameter slightly,
a minor change to [CO2] say, but does not record the change because it is so minor.
Miranda then passes this HadCM3 control configuration on to Ursula but does not mention the [CO2] fix.
Ursula makes some minor (non recorded) changes of her own and gives this changed configuation to Elaine who is very happy to have a HadCM3 control configuation and she uses it as a baseline for some sensitivity experiments.
The HadCM3 control configuration has changed in a way that is analgous to the warping of a message in the game chinese whispers.
Is Elaine's model still a HadCM3 control? YES
Elaine is doing sensitivity studies relative to her version of the HadCM3 control, she is not trying to
get bit-reproducable parity with the HadCM3 control at the Met Office.
What does this mean for Metafor?
Well it could mean that we end up with lots of slightly different HadCM3 records all with the same name.
I do not think we need to make a distinction between a model configuration from an authoratative institution like the MetOffice and a configuration used by PhD student Elaine because We will have an author attached to the metadata record so any assumptions about quality can be made by users.
Number of Processors:
For Joe, choosing how many processors to use to run his job is probably an expedient decision
that depends on the computing resources available at the moment he submits his job.
- how many processors are available when he wishes to submit his job
- how long will his job sit in the queue waiting for the right number of processors to be available
- Schedular: his job needs to finish running before the schedular time out limit is reached.
- memory: too few processors and there'll not be enough memory for the big chunks of model domain.
4 member ensemble from the 1860s same initial conditions, different perturbations.
60 processors are available when the jobs are ready to be submitted.
3 ensemble runs are made using 16 processors
1 ensemble run is made using 12 processors
This was a pragmatic choice, Joe would prefer to have done all 4 ensemble members on 16 processors.
Peter may make a concious decision to choose a particular number of processors.
Perhaps he wants to check the bit-reproducability of 12 vs 16 processors on his simulation.
Perhpas he wants to diagnose an unphysical feature that has a suspicious similarity to the structure
of the way the atmosphere is split between processors so he chooses to runs his simulation on a different number of processors.