Skip to content

Commit 1593701

Browse files
authored
Merge pull request #46 from ESMValGroup/setup_md
setup.md file
2 parents 04ebdf9 + 702adca commit 1593701

File tree

1 file changed

+289
-1
lines changed

1 file changed

+289
-1
lines changed

setup.md

Lines changed: 289 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,295 @@
11
---
2-
title: Setup
2+
title: Preparations for participating in the tutorial
33
---
4+
5+
This page includes some information on how to prepare for participating in this tutorial.
6+
7+
> ## Prerequisites
8+
> The prerequisites for the tutorial are listed on the
9+
> [tutorials home page]({{ page.root}}[% index.md %})
10+
> and are also eproduced here:
11+
> - Basic understanding of git (optional)
12+
>
13+
> - Basic understanding of your preferred command line interface (ie a bash terminal)
14+
>
15+
> - Access to CMIP data
16+
>
17+
> - Access to a suitable computing system (eg Jasmin, DLR machine)
18+
>
19+
> - Github account (optional)
20+
{: .prereq}
21+
22+
23+
## Optional tutorials to be prepared to use ESMValTool
24+
25+
26+
We typically use the command line to interact with ESMValTool.
27+
While most of us are likely to have experience with the command line,
28+
novices may want to work through this software carpentry unix shell course.
29+
30+
- Command line: [https://swcarpentry.github.io/shell-novice/](https://swcarpentry.github.io/shell-novice/)
31+
32+
33+
Git is a distributed version-control system for tracking changes in source code during software development.
34+
It’s how we distribute, share, and manage the ESMValTool code.
35+
36+
- git: [https://swcarpentry.github.io/git-novice/](https://swcarpentry.github.io/git-novice/)
37+
38+
39+
40+
41+
## Access to CMIP and Observational data and a suitable compute cluster
42+
43+
To complete this tutorial and use ESMValTool, you will need access to data in a reasonable format.
44+
Some data will be provided, but there is simply too much data available
45+
for your tutors to make it all available directly.
46+
47+
ESMValTool may be run on multiple platforms, from your local machine to
48+
large computing clusters.
49+
The best option is to use a computing cluster with an
50+
[Earth System Grid Federation (ESGF) node](https://esgf.llnl.gov/nodes.html).
51+
The benefit of using a compute cluster with an ESGF node is that the
52+
[Coupled Model Intercomparison Project (CMIP)](https://en.wikipedia.org/wiki/Coupled_Model_Intercomparison_Project)
53+
is locally stored on disk and accessible directly by the tool.
54+
Similarly, observational data would also be available at these sites.
55+
56+
Here are a few options
57+
for compute clusters with ESGF nodes:
58+
59+
- CEDA-Jasmin (UK):
60+
- DKRZ (Germany):
61+
- ETHZ (Switzerland):
62+
63+
A full list of all ESGF nodes is available [here](https://esgf.llnl.gov/nodes.html).
64+
65+
66+
If you're running on a computing cluster without an ESGF node, such as
67+
your local machine, or your institue machine, you will most likely
68+
have to make a local copy of the data that you need.
69+
70+
If neccesairy, data can be downloaded using the
71+
[synda tool](https://prodiguer.github.io/synda/index.html).
72+
73+
74+
75+
### CEDA-Jasmin
76+
77+
If you do not already have an account on JASMIN, then request an account as
78+
soon as possible.
79+
Please follow [these instructions on how to create a Jasmin account](https://help.jasmin.ac.uk/article/4435-get-a-jasmin-account-portal)
80+
81+
During the account creation, you will need an SSH key, which can be generated following
82+
[these instructions](https://help.jasmin.ac.uk/article/185-generate-ssh-key-pair)
83+
84+
Here are some more [instructions on how to get started with jasmin](https://help.jasmin.ac.uk/article/189-get-started-with-jasmin).
85+
86+
Also note that if you are working from home, JASMIN may not be directly
87+
accessible from your home. You may need to use ssh to connect to a machine
88+
in your institute and then on to JASMIN. Please test your connection before
89+
the tutorial.
90+
91+
#### Jasmin-login
92+
93+
Note that you have only created an account for the web-interface.
94+
To log into the jasmin machine and do work, you'll need to create a
95+
login account too using [this page](https://help.jasmin.ac.uk/article/161-get-login-account).
96+
97+
98+
#### Access to data on JASMIN
99+
100+
Please request access to the working groups:
101+
- [esmeval working group](https://accounts.jasmin.ac.uk/services/group_workspaces/esmeval)
102+
- [CMIP5 data](https://services.ceda.ac.uk/cedasite/resreg/application?attributeid=cmip5_research)
103+
104+
Once you have access to the data archive on CEDA, make sure to link your
105+
CEDA and JASMIN accounts.
106+
This can be done by checking the link to CEDA box on
107+
[your JASMIN profile page](https://accounts.jasmin.ac.uk/account/profile/).
108+
109+
The linking may take a few hours to take effect and is necessary for you to
110+
access the BADC archives via JASMIN. Some CMIP5 data sets such as MIROC
111+
are not accessible by default and special permission has to be requested to
112+
access them via [the CEDA catalogue page](https://catalogue.ceda.ac.uk/).
113+
114+
#### Test your Setup
115+
116+
Log into jasmin-login:
117+
118+
~~~
119+
120+
~~~
121+
{: .language-bash}
122+
123+
Then log into the sci1 machine:
124+
125+
~~~
126+
ssh -X jasmin-sci1
127+
~~~
128+
{: .language-bash}
129+
130+
Can you see the following locations:
131+
~~~
132+
ls /group_workspaces/jasmin4/esmeval/obsdata/Tier2
133+
ls /badc/cmip5/data/cmip5/output1/MOHC/HadGEM2-ES
134+
ls /badc/cmip6/data/CMIP6/CMIP/*/*/historical/r1i1p1f?/Omon/[ts]os/gn/latest/*.nc
135+
~~~
136+
{: .language-bash}
137+
138+
Note that the JASMIN is only open to certain locations (mostly universities, and research centres).
139+
You may need a VPN if you wish to connect from your home network.
140+
141+
142+
143+
Please request access to the working groups:
144+
- [esmeval working group](https://accounts.jasmin.ac.uk/services/group_workspaces/esmeval)
145+
- [CMIP5 data](https://services.ceda.ac.uk/cedasite/resreg/application?attributeid=cmip5_research)
146+
147+
Once you have access to the data archive on CEDA, make sure to link your
148+
CEDA and JASMIN accounts.
149+
This can be done by checking the link to CEDA box on
150+
[your JASMIN profile page](https://accounts.jasmin.ac.uk/account/profile/).
151+
152+
The linking may take a few hours to take effect and is necessary for you to
153+
access the BADC archives via JASMIN. Some CMIP5 data sets such as MIROC
154+
are not accessible by default and special permission has to be requested to
155+
access them via [the CEDA catalogue page](https://catalogue.ceda.ac.uk/).
156+
157+
#### Test your Setup
158+
159+
Log into jasmin-login:
160+
161+
~~~
162+
163+
~~~
164+
{: .language-bash}
165+
166+
Then log into the sci1 machine:
167+
168+
~~~
169+
ssh -X jasmin-sci1
170+
~~~
171+
: .language-bash}
172+
173+
Can you see the following locations:
174+
~~~
175+
ls /group_workspaces/jasmin4/esmeval/obsdata/Tier2
176+
ls /badc/cmip5/data/cmip5/output1/MOHC/HadGEM2-ES
177+
ls /badc/cmip6/data/CMIP6/CMIP/*/*/historical/r1i1p1f?/Omon/[ts]os/gn/latest/*.nc
178+
~~~
179+
{: .language-bash}
180+
181+
Note that the JASMIN is only open to certain locations (mostly universities, and research centres).
182+
You may need a VPN if you wish to connect from your home network.
183+
184+
185+
### DKRZ
186+
187+
If you do not already have an account at the DKRZ, then [register](https://luv.dkrz.de/projects/newuser/) as soon as possible. You could find a short introduction on how to get started at DKRZ [here](https://www.dkrz.de/up/my-dkrz/getting-started/getting-started-at-dkrz).
188+
189+
There is also a [user manual](https://www.dkrz.de/up/systems/mistral) for Mistral which is DKRZ's current supercomputer.
190+
191+
#### Join a project
192+
193+
To use the resources on DKRZ you have to join a project. One option is to join an existing project by logging into [https://luv.dkrz.de/](https://luv.dkrz.de/) with your account and select 'Join existing project'. Once you are accepted by the manager of your chosen project, your web account will be turned into a full LDAP account which will allow you to log into and use the DKRZ's resources. If you do not have access to an existing project, another option for you would be to apply for resources at DKRZ. Here are some instructions on [how to apply for resources](https://www.dkrz.de/services/bereitstellung-von-rechenleistung?set_language=en&cl=en).
194+
195+
#### Access to data on DKRZ
196+
197+
CMIP5 and CMIP6 data are available in these directories:
198+
- CMIP5: /mnt/lustre01/work/kd0956/CMIP5/data/cmip5/output1/
199+
- CMIP6: /mnt/lustre02/work/ik1017/CMIP6/data/CMIP6/CMIP/
200+
201+
#### Test your Setup
202+
203+
Log into Mistral (DKRZ)
204+
205+
~~~
206+
207+
~~~
208+
{: .language-bash}
209+
210+
#### Additional information
211+
212+
Login nodes are for compiling and job submission only! For all other tasks, use one of the pre- and post-processing nodes
213+
~~~
214+
ssh -X <user-account>@mistralpp.dkrz.de
215+
~~~
216+
(see also [this](https://www.dkrz.de/up/systems/mistral/hpc-concepts))
217+
218+
Data storage:
219+
- Personal data: home directory (24GiB)
220+
- Project data: /work/<project>/<user-account>
221+
- Temporary data: scratch directory on /scratch/*/<user-account> is automatically deleted after 14 days (15TiB) (Please use this directory for all your testing! Do not use the work directory for tests.)
222+
(see also [this](https://www.dkrz.de/up/systems/mistral/hpc-concepts))
223+
224+
Running batch jobs:
225+
Info and examples on SLURM job scheduling system at DKRZ can be found [here](https://www.dkrz.de/up/systems/mistral/running-job).
226+
227+
228+
### Other computing systems
4229
FIXME
5230

231+
### Your own machine
232+
233+
If you are planning on running ESMValTool on your own machine, please make sure that you are able to download CMIP data and that you have several GB of space available to install conda & ESMVAlTool, but also enough to make a copy of some data.
234+
235+
You will also need to able to use:
236+
- git
237+
- conda
238+
- synda
239+
240+
#### Linux/unix
241+
242+
#### Mac OSx
243+
244+
#### Windows
245+
246+
ESMValTool does not directly support Windows,
247+
but successful usage has been reported through the
248+
[Windows Subsystem for Linux(WSL)](https://docs.microsoft.com/en-us/windows/wsl/),
249+
available in Windows 10.
250+
251+
252+
253+
## Github account (Advanced)
254+
255+
You don’t need a github account to participate in the tutorial.
256+
However, if you want to raise an issue, contribute to the discussions,
257+
or share your code, please [create a github account](https://github.com/).
258+
259+
To learn how to use github, please have a look at this [introduction to github](https://lab.github.com/githubtraining/introduction-to-github).
260+
261+
You may hear a few of the following phrases during the tutorial. Don’t be alarmed, they will make sense eventually.
262+
263+
### github issues
264+
Issues are github’s ticketing system.
265+
They allow users and developers to discuss problems,
266+
identify bugs, or to make suggestions.
267+
Each issue is assigned a number and will have it’s own page on github.
268+
269+
Here’s an explanation of the [github issues](https://guides.github.com/features/issues/).
270+
271+
Raising an issue is the act of creating a new issue.
272+
If you are asked to raise an issue, please follow any instructions that you are given,
273+
and also make sure that you read the default issue text.
274+
275+
276+
### pull request
277+
278+
A github pull request is the act of requesting that a branch is merged with another branch.
279+
280+
This is an advanced feature of GitHub, and will generally be performed by the ESMValTool development team.
281+
282+
283+
284+
## Install conda
285+
286+
The python package manager Conda (anaconda or miniconda)
287+
needs to be installed on your system before the tutorial starts.
288+
In some cases, your system may have a central version installed already.
289+
290+
More details on this process are available in the
291+
[Installation episode]({{ page.root}}[% link _episodes/02-installation.md %}).
292+
293+
6294

7295
{% include links.md %}

0 commit comments

Comments
 (0)