COSIMA/access-om2

should "archive" always be stored under "access-om2"?

hakaseh opened this issue · 7 comments

The archive directory is located always under "access-om2" even if I git glone ACCESS-OM2 and give it a different name, for example:

git clone --recursive https://github.com/COSIMA/access-om2.git access-om2-iamip2

The output for the following experiment:

/home/581/hh0162/scratch/access-om2-iamip2/control/1deg_jra55_ryf

will be stored under:

/scratch/v45/hh0162/access-om2/archive/1deg_jra55_ryf

I think it would be better if it was instead stored under:

/scratch/v45/hh0162/access-om2-iamip2/archive/1deg_jra55_ryf

This will avoid the potential conflict/overwrite with another repository (access-om2 vs access-om2-iamip2).

Hi Hakase,

The default location of the archive in the ${scratch}/${PROJECT}/$USER/$MODEL directory is from payu

https://payu.readthedocs.io/en/latest/design.html#model-and-experiment-layout

You can specify a a laboratory path in your config.yaml if you want. Search for laboratory here:

https://payu.readthedocs.io/en/latest/config.html#model

One of the limitations of payu is that all experiment names for a given model must be unique. In your case appendeding iamip2 to the names is sufficient to disambiguate them from other 1deg_jra55_ryf configurations.

Thanks @aidanheerdegen.

I searched for "laboratory" in https://payu.readthedocs.io/en/latest/config.html#model, but am not sure how to specify the laboratory name in config.yaml. I tried setting "model" to "access-om2-iamip2" instead of "access-om2", but that gave an error.

It is there:

laboratory (Default: /scratch/${PROJECT}/${USER}/${MODEL})
   The top-level directory for the model laboratory, where the codebase, model executables, input fields, 
   running jobs, and archived output are stored.

I am not convinced that this is what you want to do. If you have experiments with the same name in different laboratories it will cause issues later on when you want to add these to shared COSIMA Cookbook databases etc.

It is usual to have a single laboratory for a model and name experiments, inputs and executables uniquely where required.

yes, but how can i change the archive path in config.yaml? I don't see "laboratory" in config.yaml. If i understand correctly, everything else (codebase, model executables, work, control) is stored within "access-om2-iamip2" but only archive is not.

I would like to have a different laboratory for testing purposes. If I modify the model code and do ./install.sh, this will update the executables. If I have another job running in another experiment with the default executables, it will also be modified (unless I create a hard copy of those working executables).

I understand that my approach is not ideal and there are better/cleaner ways to do these tasks, but i'd need more skills.

Add this to your config.yaml:

laboratory: access-om2-iamip2

If it is just a name (as above) it will be used instead of the model. That should do what you need.

Thanks @aidanheerdegen that did what I needed to do:

lrwxrwxrwx 1 hh0162 v45 62 Jan 19 14:43 archive -> /./scratch/v45/hh0162/access-om2-iamip2/archive/1deg_jra55_ryf

It created extra "./" at the beginning of the path, but this has no effect, so it is all good.

I can't reproduce the leading /. when I try this myself.