This is a series of exercises that will walk you through the basic tasks as you get on board the Atos HPCF.
Prerequisites
In order to follow this tutorial, these are the prerequisites you must fulfil before starting:
- You must have a valid ECMWF account with privileges to access HPCF or ECS. If you only have access to ECS, you may need to skip certain exercises involving HPCF.
- You must have 2 Factor Authentication enabled with TOTP.
- You must be able to connect with at least one of the following methods:
- Using the Virtual Desktop Infrastructure (VDI). See the corresponding documentation to get started.
- Using Teleport SSH from your own computer.
Logging into Atos HPCF and ECS
Reference Documentation
First of all, let's try to connect to the computing services via SSH:
Accessing a login node
Access the default login node of the ATOS HPCF or ECS and take note of what node you are in
Open a new tab in your terminal and connect again. Did you get the same hostname? Why is that?
Now, from your open SSH session on Atos HPCF or ECS, connect to the main login alias again. Did it ask for a password? Can you set your account up so jumps between hosts are done without a password?
Interactive session
Reference documentation
Standard sessions on login nodes do not guarantee access to dedicated resources such as cpus or memory, and strict limits on those are imposed.
Can you get a dedicated interactive session with 10 GB of memory and 4 cpus for 8 hours?
Log out of that interactive session. Can you reattach to it?
Cancel your interactive session
Storage spaces
Reference documentation
We will now explore the different options when it comes to storing your data.
Main filesystems
Connect to Atos HPCF or ECS main login node. What is your default filesystem? Can you try 4 different ways to accessing that space?
There are 3 more main storage spaces. Create an empty file called
del.me
on each one of them? Check that they have been created withls
, and then remove them withrm
.How much space have you used in each of your main 4 filesystems? How much can you store?
If you are on the VDI, open a new terminal there. Can you access your
HOME
,PERM,
SCRATCH
andHPCPERM
?EXTRA: For long term archival purposes, users with access to HPCF may also use ECFS. Files will be stored in ECMWF's Data Handling System on Tape. Create a small text file and copy it to your ECFS space, then ensure it is there, retrieve it and remove it.
Temporary spaces
There are a number of temporary spaces you can use in your session or job.
Create a file called
testfile
on the$TMPDIR
,$SCRATCHDIR
and/tmp/
.Open another session in the same login node with
ssh $HOSTNAME
. Can you find the files you have created earlier?
Filesystem Usage
Can you decide what would be the best filesystem to use in the following cases? Why would you make that choice?
Store the source code, scripts and configuration of your programs and workflows
Store Climate Files to be used by your model runs on Atos HPCF.
Working directory for your jobs.
Store data that that you use frequently, which is considerable in size.
Store data for longer term which is considerable in size, such as experiment results. You are not going to use it often.
Temporary files that you don't need beyond the end of the session or job
Recovering Deleted files
Reference documentation
Imagine you have accidentally deleted
~/.profile
in your HOME directory. Can you get back the latest version?Imagine you have accidentally deleted a file in your PERM directory. Can you get back the latest version?
Imagine you have accidentally deleted a file in your
SCRATCH
orHPCPERM
directories. Can you get back the latest version?
Managing your software stack environment
Reference documentation
Atos HPCF and ECS computing platforms offer a wide range of software, libraries and tools.
Basic software environment management
You want to use CDO, a popular tool to manipulate climate and NWP model data. What do you need to do to get the following result?
$ cdo --version Climate Data Operators version X.Y.Z (https://mpimet.mpg.de/cdo) System: x86_64-pc-linux-gnu ...
How many versions of CDO can be used at ECMWF? Can you pick the newest?
Load the
netcdf4
module. Can you see what modules do you have loaded in your environment now?Remove the
netcdf4
module from your environment and check it is gone.Can you check what is the installation directory of the default netCDF4 library?
Can you restore the default environment you had when you logged in? Check that the environment is back to the desired state.
ECMWF tools
Reference documentation
Can you run codes_info tool, which is part of ecCodes?
Can you see what versions of ECMWF software are part of that module?
Can you run the
ecflow_client
command and get the version?
Python and Conda
Reference documentation
Try to run the command below. Why does it fail? Can you make it work without installing pandas yourself?
$ python3 -c "import pandas as pd; print(pd.__version__)" Traceback (most recent call last): File "<string>", line 1, in <module> ModuleNotFoundError: No module named 'pandas'
You need to use the latest version of pandas to run a given application. What can you do (without using conda)?
You may also use conda to create your own software stack with python packages and beyond. In order to use conda, you can load the corresponding module:
module load conda
What happened?
Create your new conda environment with latest pandas in it. Check the version Hint: you can also use mamba to speed up the environment creation process
Using Containerised applications
Reference documentation
The default psql command, part of the PostgreSQL package is not up to date. You need to run the latest version, but you do not want to build it from source. A possible solution is to use a containerised version of this application. Can you run this on Atos HPCF or ECS?