This page lists information about how to get started with running applications on the HPC machines.
To gain access to the HPC machines, a formal application is needed. The process is explained at our page for how to apply for user account.
Logging into the machine involves the use of Secure Shell (SSH) in a terminal. SSH login is available natively to Linux or Mac OSX (or any UNIX-based systems). On Windows machines an SSH client is needed, for example, PuTTY.
$ ssh <username>@<machinename>
<username> with your registered username and
<machinename> with the
specific machine name.
The machine names are:
login.nird.sigma2.no- NIRD. See NIRD for more about NIRD.
First time you log in, and every time there is a change in the ssh-server, OS or hardware on the system you log in to, you will be asked to confirm the ssh-server fingerprint. Typical message is:
The authenticity of host 'fram.sigma2.no (126.96.36.199)' can't be established.
The procedure then is to check the stated
ECDSA key fingerprint with the one
printed here: SHA256 fingerprint
If you are connecting from a laptop we recommend that you use Mosh.
The Fram and Saga systems provides a remote desktop service. See here for tutorial and details.
Quickstart: Use a VNC client to log into
desktop.saga.sigma2.no:5901. A web based remote desktop service is also
available https://desktop.fram.sigma2.no:6080. Access to these services are
blocked outside the Norwegian Research network, e.g. only accessible from
UNINETT and partner institutions. (workarounds are described in the
Fram and Saga run CentOS Linux distributions as operating system, while Betzy runs Red Hat Enterprise Linux Server (RHEL). The machines can run C/C++ or Fortran OpenMP and MPI applications, and depending on the machine, various open-source and third party applications. The Programming Environment page has more information about third-party applications.
It is expected that the user is familiar with command-line interfaces (CLIs), but for those who are not familiar with commands, the UiB and UiT pages have several tutorials on the CLI environment:
Introduction to Unix CLI - UiB
To copy files from your machine to the HPC machines, use SSH File Transfer Protocol (SFTP) or Secure Copy (SCP). They are available as command-line tools for Linux and MacOS X but Windows users need to download a separate SCP or FTP client, such as WinSCP.
For example, to copy projectfiles.tar.gz to the home directory of myusername to Fram, type:
$ scp projectfiles.tar.gz email@example.com:
The Transferring Files page has more information about transferring files to Fram.
To keep track of the large number of different pieces of software that is
typically available on a shared HPC cluster, we use something called a software
module system. This allows us to have many different versions of compilers,
libraries and applications available for different users at the same time
without conflicting each other. By default when you log in to the cluster you
will get a clean environment with nothing but standard system compilers and
libraries. In order to make your favourite software application available to
you, you need to load its module into your environment, which is done using the
module [options] [module name]
Some of the more common options include:
avail- list the available modules
list- list the currently loaded modules
load <modulename>- load the module called
unload <modulename>- unload the module called
show <modulename>- display configuration settings for
More details on the module system, as well as a list of currently available software modules, can be found in the Software section.
The HPC machines provide compute nodes for executing applications. To ensure fair access to the resources, the HPC machines run applications as jobs in a queue system, which schedules the tasks and process to run on compute nodes. All systems use the Slurm queue system.
A job is described by a batch script, which is a shell script (a text file)
SBATCH options to specify the needed resources and commands to perform
the calculations. All batch scripts must contain at least the following
#Project name #SBATCH --account=<project_name> #Max running time. The wall clock time helps the scheduler assess priorities and tasks. #SBATCH --time=<wall_clock_time>
To submit a job, use the
sbatch command followed by the batch script’s name:
See the “JOBS” section in the menu for documentation about jobs and the queue system.
Information on available CPU-hours in your accounts:
The menu on the left list the pages with more information about developing and running applications.