Skip to content
NAISS Logo
Allocations Support Training Software naiss.se

Quick Start

Brief description

Arrhenius is a powerful supercomputer that NAISS is building together with EuroHPC. You can find hardware documentation at https://www.naiss.se/resource/arrhenius/

Get an account

In order to get access to Arrhenius HPC you need to apply for an account via SUPR

More information is available at Requesting a login account on Arrhenius HPC

How to log in

Using the terminal

Access to the system requires both SSH and two-factor authentication (2FA). Once your account has been created and 2FA has been configured, you can connect using your preferred SSH client:

ssh [username]@login.hpc.arrhenius.naiss.se
[username]@login.hpc.arrhenius.naiss.se) Password: ******
[username]@login.hpc.arrhenius.naiss.se) Verification code: *****

Connecting using ThinLinc remote desktop

In the ThinLinc client, select tl.hpc.arrhenius.naiss.se as the Server.

More information is available for terminal login and for thinlinc

Storage

Arrhenius HPC provides several storage locations for different purposes. Understanding where to store your data will help ensure good performance and avoid quota issues.

Home Directory (/home/<username>)

Use your home directory for personal configuration files, application settings, and small personal files.

  • Quota: 30 GiB
  • File limit: 1 million files
  • Accessible only by you by default
  • Not intended for project data or large datasets

Project Storage (/nobackup/proj/disk/<project>)

Store all project-related data here, including:

  • Input data
  • Output data
  • Job scripts
  • Software and applications installed by project members

Project storage is shared among project members and is the recommended location for most research data.

To see your available project directories and quota usage:

storagequota

More information is available for Storage

Transfer of files

Files and directories can be transferred to and from Arrhenius with the rsync command.

Basic example: push data from Tetralith to Arrhenius

[x_examp@tetralith1 ~]$ rsync -av /proj/somedirectory/somesubdirectory/ myarrheniususer@login.hpc.arrhenius.naiss.se:/nobackup/proj/disk/somedirectory/somewhere/
(myarrheniususer@login.hpc.arrhenius.naiss.se) Password: <ENTER YOUR ARRHENIUS PASSWORD HERE>
(myarrheniususer@login.hpc.arrhenius.naiss.se) Verification code: <ENTER YOUR ARRHENIUS 2FA CODE HERE>
sending incremental file list
created directory /nobackup/proj/disk/somedirectory/somewhere
[...]
[x_examp@tetralith1 ~]$

More information is available for Transfer of files

The Lmod module system

Arrhenius uses the Lmod environment module system. Lmod allows for the dynamic adding and removal of installed software packages to the running environment. To access, list and search among the installed application programs, libraries, and tools, use the module command (or the shortcut ml)

ml
# lists the loaded software modules

ml avail
# lists the available software modules

ml avail <program name>
# lists the available versions of a given software

Modules having names prefixed by a GPU/ string are exclusively usable on the GPU partition, while modules lacking this prefix are usable only on the CPU partition.

To find all software and all its dependencies.

ml spider <program name>
# lists the available versions of a given software and what dependent modules need to be loaded

When you have found the program you are looking for, use

ml <program>
# to load the program module

For more details on how to use modules, see How to use module to load different softwares into your environment.

Programming Environments

Arrhenius provides several programming environments that include compilers, MPI libraries, numerical libraries, and development tools needed to build and run scientific applications.

If you're unsure which environment to use:

System Recommended Environment
CPU nodes buildenv-intel/2025b-eb
GPU nodes GPU/buildenv-nvhpc/25.9-cu13.0

These environments provide a complete and optimized toolchain for most applications.

What's Included?

Most programming environments contain:

  • C, C++, and Fortran compilers
  • MPI libraries for distributed computing
  • BLAS/LAPACK numerical libraries
  • FFT libraries
  • ScaLAPACK for distributed linear algebra
  • Debugging and profiling tools

GPU environments also include:

  • CUDA Toolkit
  • NCCL
  • NVSHMEM
  • cuFFTMp
  • NVIDIA-optimized math libraries

More information is available at Programming environment

Building and Running Applications

  • CPU workloads: buildenv-intel
  • GPU workloads: GPU/buildenv-nvhpc

For most users, loading the appropriate buildenv, building the application, and launching it with mpprun is all that is required.

Build Your Application

Build the application according to the software's documentation. For MPI applications, use the MPI compiler wrappers provided by the environment:

mpicc
mpicxx
mpifort

Example:

./configure CC=mpicc
make -j

Run Your Application

Request resources interactively:

salloc -n 128 -t 01:00:00

Launch the application using:

mpprun my_application

Alternatively, submit the application through a Slurm batch script.

More information is available on Building applications

Using Containers

Arrhenius supports Apptainer containers, allowing you to package applications and all required dependencies into a single file.

Build a Container

Start an interactive session:

interactive -A <project>

Build the container:

apptainer build my_container.sif my_recipe.def

Run a Container

Execute a command inside a container:

apptainer exec my_container.sif <command>

Start an interactive shell:

apptainer shell my_container.sif

Multi-node Applications

Applications using multiple nodes require support for the Slingshot high-speed interconnect. If your containerized application depends on efficient inter-node communication, contact NAISS support for guidance.

More information on Building and running containers

Submitting Jobs

Arrhenius uses the Slurm workload manager for resource allocation and job scheduling.

Submit a Batch Job

Create a job script containing your resource requirements and application launch command, then submit it using:

sbatch <job_script>

Request Resources

When submitting jobs, specify:

  • Project account (-A)
  • Partition (-p)
  • Number of tasks (-n)
  • CPUs per task (-c)
  • Walltime (-t)
  • GPUs (--gpus) for GPU jobs

Available partitions are:

  • cpu - Standard CPU nodes
  • gpu - GPU nodes
  • fat - Large-memory CPU nodes

Monitor Jobs

Useful Slurm commands:

squeue   # View queued and running jobs
sinfo    # View cluster and partition status

Run Applications

Applications should normally be launched within a resource allocation using:

mpprun

or

srun

mpprun is the recommended launcher for most applications on Arrhenius.

More information on Submitting jobs

Migration guide

In case you are a NAISS user that wants to migrate to our new system read information in our Migration guide