-
Notifications
You must be signed in to change notification settings - Fork 4
The C ESM EP in a nutshell
On this page you will find the basic steps to run the C-ESM-EP on Spirit or Irene for the first time. This also applies for running it at CNRM, except for a few specifics described at Running C-ESM-EP at CNRM
Start by cloning the sources on your /home:
On Spirit:
git clone https://github.com/jservonnat/C-ESM-EP.git
If you have issues with the git repo, you can simply copy the src directory on Spirit:
cd
mkdir C-ESM-EP
/net/nfs/tools/Users/SU/jservon/cesmep_installs/cesmep_for_libIGCM C-ESM-EP
On Irene, you just copy the sources:
mkdir C-ESM-EP
cp -r /ccc/cont003/home/igcmg/igcmg/Tools/cesmep C-ESM-EP
In the script run_C-ESM-EP.py you will find a variable 'email' that you should set to:
- your e-mail if you want to receive a notification at the end of each job
- None if you want to deactivate it
Then run the standard_comparison comparison (provided as an example):
python run_C-ESM-EP.py standard_comparison
This will submit one job per available component/atlas in the standard_comparison directory. Note: standard_comparison contains a subset of the available atlases that is suitable for a coupled model. There are more atlases available in share/optional_atlas
The script will return the url of the C-ESM-EP html frontpage:
[...]
component = Monsoons
2246587
/home/fabric/users/jservon/C-ESM-EP
-- The CliMAF ESM Evaluation Platform will be available here:
--
-- https://vesg.ipsl.upmc.fr/thredds/fileServer/IPSLFS/fabric/C-ESM-EP/standard_comparison_jservon/C-ESM-EP_standard_comparison.html
--
--
-- html file can be seen here:
-- /prodigfs/ipslfs/dods/fabric/C-ESM-EP/standard_comparison_jservon/C-ESM-EP_standard_comparison.html
fabric@ciclad-ng:~/users/jservon/C-ESM-EP>
Note: if you just want to get the url of a comparison without running the atlases, add url at the end of the command line and the script will simply return the url of the frontpage:
python run_C-ESM-EP.py standard_comparison url
Running the C-ESM-EP interactively is really interesting if you are debugging, or making tests. We recommend to restrict interactive use of the C-ESM-EP only for tests and small atlases (not convenient for long jobs anyway).
First, submit an interactive session like this:
=> On Spirit:
srun --pty --mem-per-cpu=16G --time=60
(set the memory according to your needs)
=> at TGCC:
ccc_mprun -p skylake -T 3600 -s
Check the online documentation of ccc_mprun at TGCC by passing the empty command:
ccc_mprun
to see all the available options (number of cores, memory limit).
=> at CNRM: nothing special to do
Then, go back to your comparison directory:
cd C-ESM-EP/my_comparison
You can then run your component interactively like this:
./job_C-ESM-EP.sh my_component
with my_component being the name of the component you are interested (could be AtlasExplorer, Atmosphere_Surface, NEMO_main, ORCHIDEE...)
If you got your C-ESM-EP code from github (or with a git clone of the Ciclad repo), get the last version of the C-ESM-EP doing:
git pull
in your working directory. If you copied your sources from the directory on Irene, do:
cp -r [path_to_home_drf]/p86jser/C-ESM-EP/src/* .
from your working directory.
Warning: if there are modifications on the params_*.py files in standard_comparison, re-start a new comparison from standard_comparison and not from one of your existing comparisons to benefit from the new features (and potentially avoid errors).
But there are also some pre-defined sets of atlases that you can run with the following arguments:
python run_C-ESM-EP.py my_comparison OA
=> 'Atmosphere_Surface', 'Atmosphere_zonmean', 'NEMO_main', 'NEMO_zonmean', 'NEMO_depthlevels', 'Atlantic_Atmosphere_Surface', 'ENSO', 'PISCES’
python run_C-ESM-EP.py my_comparison LMDZ
=> 'Atmosphere_Surface', 'Atmosphere_zonmean', 'Atmosphere_StdPressLevs’
python run_C-ESM-EP.py my_comparison LMDZOR
=> 'Atmosphere_Surface', 'Atmosphere_zonmean', 'Atmosphere_StdPressLevs', 'ORCHIDEE’
python run_C-ESM-EP.py my_comparison NEMO
=> 'NEMO_main', 'NEMO_zonmean', 'NEMO_depthlevels’, ‘PISCES’
Feel free to specify yours in run_C-ESM-EP.py (follow the examples in run_C-ESM-EP.py)
You will find detailed documentation about errors and how to track and correct them on this page
The C-ESM-EP can produce a large volume of output/error/log files. You can easily clean those files use the clean_out_error.sh script:
bash clean_out_error.sh
Move on to Building my comparison part 1 if you have successfully done all the steps!
And also have a look at how to use set_available_period_ts_clim.py to take advantage of a faster C-ESM-EP.