Get Started with LUMI
Please read through all of this carefully before you start running on LUMI. Here we describe a few sets of basic rules and the important information that you need to get started.
Setting up SSH key pair
You can only log in to LUMI using SSH keys. There are no passwords. In order for this to work, you need to register your SSH key with MyAccessID, from where LUMI will fetch it.
The authentication in the portal is done with home organization identity provider, which can be selected from the list. In case that is not possible please contact the support team with the error message, and you may also contact your identity provider directly.
You also need to be a member of a project. The project's PI will create a project and invite members based on email addresses. Resource allocators of each country will accept the project. When the project is accepted, the user accounts will be created in LUMI. You will receive email from CSC's Identity management system informing you of your project ID and user account name.
Generate your SSH keys
After registration, you need to register a public key (Note! Key must be RSA 4K bits or elliptic curve). In order to do that you need to generate an SSH key pair.
An SSH key pair can be generated in the Linux, macOS, Windows PowerShell and MobaXterm terminal. It is important to create a long enough key length. For example, you can use the following command to generate a 4096 bits RSA key:
ssh-keygen -t rsa -b 4096
You will be prompted for a file name and location where to save the
key. Accept the defaults by pressing Enter. Alternatively, you can
choose a custom name and location. For example
Next, you will be asked for a passphrase. Please choose a secure passphrase. It should be at least 8 characters long and should contain numbers, letters and special characters. Do not leave the passphrase empty.
After that a SSH key pair is created. If you choose the name given as an
example, you should have files named
An SSH key pair can be generated with the PuTTygen tool or with MobaXterm (Tools MobaKeyGen). Both tools are identical.
In order to generate your key pairs for LUMI, choose the option RSA and set the number of bits to 4096. The, press the Generate button.
You will be requested to move the mouse in the Key area to generate some entropy; do so until the green bar is completely filled.
After that, enter a comment in the Key comment field and a strong passphrase. Please choose a secure passphrase. It should be at least 8 characters long and should contain numbers, letters and special characters. Do not leave the passphrase empty.
The next step is to save your public and private key. Click on the Save
public key button and save it to the desired location (for example, with
id_rsa_lumi.pub as a name). Do the same with your private key by clicking
on the Save private key button and save it to the desired location (for
id_rsa_lumi as a name).
The private key should never be shared with anyone, not even with LUMI staff. It should also be stored only in the local computer (public key can be safely stored in cloud services). Protect it with a good password! Otherwise, anyone with access to the file system can steal your SSH key.
Upload your public key
Now that you have generated your key pair, you need to set up your public key in your user profile. From there, the public key will be copied to LUMI with some delay according to the synchronization schedule.
To register your key, click on the Settings item of the menu on the left as shown in the figure below. Then select Ssh keys. From here you can add a new public key or remove an old one. Note: SSH key structure is algorithm, key, comment. Please EXCLUDE comment from your copy/paste.
After registering the key, there can be a couple of hours delay until it is synchronized.
How to log in
Connect using a ssh client:
where you need to replace
username with your own username, which you received
via email during the registration. If you cannot get a connection at all, your
IP number range might be blocked from login. Please contact the
When you log in to LUMI, you end up on one of the login nodes. These login nodes are shared by all users and they are not intended for heavy computing.
The login nodes should be used only for:
- compiling (but consider allocating a compute for large build jobs)
- managing batch jobs
- moving data
- light pre- and postprocessing (a few cores / a few GB of memory)
All the other tasks should be done on the compute nodes either as normal batch jobs or as interactive batch jobs. Programs not adhering to these rules will be terminated without warning.
Compute intensive jobs must be submitted to the job scheduling system. LUMI uses Slurm as the job scheduler. In order to run, you need a project allocation. You need to specify your project ID in your job script (or via the command line when submitting your job) in order for your job to be submitted to the queue.
Commands to gather information about the project and quota are not
available yet. However, you can use the
groups command to retrieve your
project ID when connected to LUMI: you should see that you are part of a
Here is a typical batch script for Slurm. This script runs an application on 2 compute nodes with 16 MPI ranks on each node (32 total) and 8 OpenMP threads per rank.
$ cat batch_script.slurm #!/bin/bash -l #SBATCH --job-name=test-job #SBATCH --account=<project_xxxxxxxxx> #SBATCH --time=01:00:00 #SBATCH --nodes=2 #SBATCH --ntasks=32 #SBATCH --ntasks-per-node=16 #SBATCH --cpus-per-task=8 #SBATCH --partition=standard export OMP_NUM_THREADS=$SLURM_CPUS_PER_TASK srun ./application
Where to store data
On LUMI, there are several disk areas: home, projects, scratch (LUMI-P) and fast flash-backed scratch (LUMI-F). Please familiarize yourself with the areas and their specific purposes.
||for user configuration files and source code|
||act as the project home directory|
||intended as temporary storage for input, output or checkpoint data of your application|
||fast scratch space based on flash storage|
Compiling and Developing your Code
LUMI comes with multiple programming environments: Cray, GNU, and AOCC. In addition, the most common libraries used in an HPC environment tuned for LUMI are also available. Parallel debugger and profiling tools are also at one's disposal.
The LUMI User Support Team is here to help if you have any questions or problems regarding your usage of LUMI. You can contact the support team here.