Explore UCD

UCD Home >

Sonic HPC

Research IT provides High Performance Computing through our Sonic HPC, for more details on getting an account, user guide, software provided and cluster hardware see below.

For help, advice or additional software requirements please see the IT Support Hub

Sonic HPC

Research IT HPC Cluster
Cluster Name Sonic
Cluster Usage Real Time Information (visible using the staff and research VPNs)
No. of Compute Nodes 53
Total Number of Cores 1468 (hyperthreading disabled)
Processor Speed

20 nodes with 2 Intel Xeon 6152, 2.1GHz, 22 cores each

4 nodes with  2 Intel Xeon 6140, 2.3Ghz, 18 cores each

 24 nodes with 2 Intel E5-2660 v2, 2.2Ghz, 10 cores each

4 nodes with with 2 Intel E5-2620 v2, 2.1Ghz, 6 cores each

1 node with 2 Intel E5-2620 v3, 2,4Ghz 6 cores each

Memory per Nodes 128Gb (24) 256Gb (7)  384 (20) 786 (1) 1.5TB (1)
Interconnect Infiniband QDR 40GBs
Home Directory Quota 50GB
Scratch Space 180TB 
Additional Nodes Types 

MEM2 - High Memory - 765 GB RAM 4 * 2.4GHz (6 cores)

MEM3 - High Memory - 1.5TB RAM 

3 GPU Servers each with 2 Nvidia Tesla V100 . CPU  2.1Ghz RAM =256GB

 

Getting Started:

Access to the Sonic HPC Cluster is through an SSH command line interface on the Sonic login node - login.ucd.ie on port 22

ssh username@login.ucd.ie

If you are using windows, you'll need an SSH client such as Putty to SSH to the login node. You will also need to you a transfer client such as WinSCP. Mac OSX or Linux users can use any Terminal application.

The Sonic Cluster is a Linux environment. Users not familiar with working in a Linux environment should familiarise themselves with the basic file and directory operations of the Linux command line interface. There are a good series of introductory tutorials available on the University of Surrey's Electronic Engineering Department website

Once you are logged in to the cluster, you will find yourself in your home directory. On Sonic, your home directory is at /home/people/username (where usernameis your UCD Connect username).

Each shared group user has a disk quota of about 50GB. Within your home directory you will see a linked directory called "scratch" - this is an area that users can use to temporarily store working data. As this  Please note that this data is liable to be deleted at short notice and as such is not suitable for long term storage. Users of a contributory group have larger quotas

File Storage:

Each shared group user has a home directory at /home/people/username which can be used to store approximately 50GB of data - this storage area is intended only for Research Data relevant to the users cluster usage and should not be used as a private data store.

Additionally, users have access to extra storage via the 'scratch/' directory/symlink within your home directory. This storage area is for temporary short-term storage of data required for input into, or output from, your currently running jobs. This is not a long term stoage platform and files not modified  for 6 months will be deleted 

Submitting Jobs:

To submit a job to the Sonic Cluster, you will need to use the sbatch command to queue your job. sbatch is part of SLURM which controls the queues on Sonic.

Your job will first need to be saved in a script which will need to pass certain parameters to Slurm. These parameters should be specified at the beginning of your jobs script.

An example of a script using some of these parameters is shown below:

#!/bin/bash -l

# Set the number of nodes

#SBATCH -N 1

# Set the number of tasks/cores per node required 
#SBATCH -n 3


# Set the walltime of the job to 1 hour (format is hh:mm:ss)
#SBATCH -t 01:00:00

# E-mail on begin (b), abort (a) and end (e) of job
#SBATCH --mail-type=ALL

# E-mail address of recipient
#SBATCH --mail-user=myemailaddress@ucd.ie

# Specifies the jobname
#SBATCH --job-name=myjob

# Change working directory to current directory
cd $SLURM_SUBMIT_DIR
# Your code here! (This example just prints the current date and exits!)
date;

To run the script, type:

$sbatch myjob.sh

This will then return something like:

Submitted batch job 331

where 331 is your job ID.

See here for more detail on sbatch parameters. There are also two example scripts present in your home folder: samplejob.sh and samplempi.sh

To view your own queued jobs, you can use the 'squeue' command, which will show you your job id, the name of the job,the jobs current status, and the queue (called a partition in slurm) and the length of time in which your jobs is running.

sacct -j jobid will give detailed of your job once it is finished 

You can delete a job from the queue by using "scancel <jobid>". 

Specifying the GPU nodes 

If you wish to avail of the GPU enabled worker nodes (equipped with 2 Nvidia Telsa V100's each). To request a GPU server and all its cores you should submit to the GPU queue/partion with this command .  There is a sample GPU job in your home directory called samlegpu.sh which has all the setting you to need to use a GPU nodes and that you should amend as required. To submit enter the following 

sbatch --partition=gpu   samplegpu.sh If you are a computer science user please use this command

sbatch --partition=csgpu samplegpu.sh

Specifying the High Memory nodes

If you wish to avail of the high memory server sonicmem2 equipped with 768 GB of RAM and sonicmem3 equipped with 1.5TB of RAM you should add this line to your job submission script

sbatch --nodelist=sonicmem3 cluster

Queues:

For shared queues there is one standard queue which allows job to run up to a maximum of 10 days

As contributors to the cluster users from the School of Computer Science jobs are sent to the cs queue

Interactive Jobs 

If your jobs require user intervention then you need to run an interactive job which requests an bash shell on a worker node. The syntax for submitting an interactive job is 

srun --time=03:00:00 -c6 --pty bash

--time referes to the length of time you require the shell prompt

-c6 means the number of cores you require 

Graphical Interactive Jobs

To run a graphical interactive job you must forward your display to sonic and you must submit an interactive job to the graphical queue. To forward your display to sonic on linux use the following command ssh -X username@sonic.ucd.ie . For windows you need to run a service such as Xming and select "Enable X11 forwarding " on your putty session which is on the left hand side under SSH and X11. Once on sonic you run this command to request a shell session on a node that has graphical components installed . For 

srun --partition=graphical --time=01:00:00 --x11 --pty bash

Once you run this command the job will queue and will appear to "hang" after the message waiting on resources returns, this is normal typically you will wait about 30 seconds before getting a prompt. As these are interactive jobs if your session ends  the job will also end as well so please save output as you go along .

How many Jobs can I run at time (This information is subject to change)

Currently each standard shared user is allowed to use up to 48 cores at any one time. When the cluster is busy this number is affected by the amount of resources availble. Jobs with a smaller number of cores requested typically start earlier than those jobs wishing to reserve large amount of cores. When the cluster is quiet, a hard limit will allow users requesting more than 48 cores access of up to 260 cores, to utilise any free resources.

Contributory uses are allowed to utilise more cores at any one time that shared users, the amount of maximum. 

What Software is installed

The best way to find out what centrally installed software is availble is with the module avail command.

Is there an easy way to load environment variables into my path

Yes, using the modules package you can load environmental for different packages into your path. More information on this can be found in the "Sonic Software" section below.

Access off Campus 

There is no direct access to the new cluster externally . If you have a @ucd.ie email address you can apply for a UCD VPN account using the VPN request form on VPN webpage  and access the cluster using this. Please ensure you are logged into UCD Connect to access the form 

If you have a @ucdconnect.ie email address you can apply for a bastion host account by emailing ithelpdesk@ucd.ie .

How do I use the Bastion Host ?

Windows User Guide for Bastion Host

User Guide for Bastion Host for Linux Clients

Singularity is open source software developed by the Lawrence Berkeley National Laboratory and has been installed on the Sonic cluster in order to allow our users to deploy containers in their own local environment. Users have the ability to package entire scientific workflows, software, libraries, and data as well as allowing users to run software specifically built for different operating systems.  Singularity further allows users to take Docker containers and migrate them to the Singularity SIF format. It has also been configured to run with the Slurm Resource Scheduler 

An example of a batch script for Singularity is shown below

The following shows how to pull a Docker container

There are currently singularity containers for Tensorflow, Pytorch and Gradle. Users also have the option of downloading and running Singularity containers in their scratch directories.

Additional Resources

Docker Hub
NVIDIA GPU Cloud
Singularity Hub
Singularity Library
Quay.io
BioContainers

Centrally Installed Software

Software on Sonic is installed from source into the /opt/software directory. Sonic uses "modules" to handle the environment variables for software installations. Each piece of software installed has its own "module" file written for it. Practically, this means that to use a particular software package, you should load the corresponding module.

To find out more details about what software is installed on sonic and how to load the environment variables into your profile please use the below module commands.

module list - shows a list of what modules are currently loaded into your session

module avail - shows a list of what modules(software) are available to be loaded

module load modulename - add a particular module to your session

module unload modulename - remove a particular modules from your session

module purge - remove all loaded modules from your session

If you do not specify a version of the module then the latest version will be selected automatically.

User-Installed Software

Python/Anaconda

Various versions of Python and Anaconda are installed centrally, and can be accessed using modules as above. Users are then required to install their required python packages themselves. Any python packages installed by users will be located in their home directories (so they will only be accessible to the user that installed them).

Python packages can be installed using Pip (Python's package installer), however users may want to consider using Anaconda environments to better manage dependencies and conflicts between the packages required for different projects. An Anaconda environment contains a set of installed packages that become accessible when the environment is active. This allows a user to have different collections of packages installed, and only access one collection at a time. Official Anaconda documentation can be found at https://docs.conda.io/projects/conda/en/latest/user-guide/tasks/manage-environments.html.

An example workflow for setting up an Anaconda environment named "env1", running Python 3.7 and installing the "astropy" version 4.3.1 package and its dependencies is shown below:

  • module load anaconda
  • conda create --name env1 python=3.7
  • conda init bash (this command only needs to be run the first time you set up an environment)
  • conda activate env1
  • conda install astropy=4.3.1

Note, you may also use Pip to install packages if preferred, and if an Anaconda environment is active at the time, the packages will be install into it.

To deactivate the environment, run "conda deactivate".

After installing Anaconda, you may notice that the "base" environment is automatically loaded when you log into Sonic. To disable this, run the following command after loading the Anaconda module:

  • conda config --set auto_activate_base false

To access the Anaconda environments from within your Sonic job script, include the commands "module load anaconda" and "conda activate environmentName".

Sonic Topology

The following is the hardware spec of what was purchased for the upgrade of the Sonic Cluster. Interconnect has been upgraded to infiniband and a parallel file system (BeeGFS) has been implemented across 4 storage servers. New login and head nodes complete the infrastracuture environment . There are 20 new standard compute nodes which no longer have hyperthreading enabled and contain 384GB of RAM available and are equipped with 2 Intel Xeon Gold 6152 (22 cores each) CPU. There are 3 GPU servers each containing 2 Nvidia Tesla V100's. The school of Computer Science has contributed to the hardware purchase of the cluster and it's users have larger entitlements to that hardware. Home directories have quotas implemted at 50GB. The parallel storage is 180GB in size and is shared across the cluster. This storage is only for the computational use and not long term storage of data. In order for the cluster to remain onlines files only than 6 months will be removed off this storage 

Storage Nodes Manu Model CPU Spec Hard Drive Spec Memory/GB 
Storage 1 Dell R740XD  2 X Intel Xeon Gold 6136   24 X 2 TB 10K RPM SAS 12Gbp 384
Storage 2 HP R740XD  2 X Intel Xeon Gold 6136    24 X 2 TB 10K RPM SAS 12Gbp 384
Storage 3 Dell  R740XD 2 X Intel Xeon Gold 6246 24 X 2 TB 10K RPM SAS 12Gbp 384
MetaData 1 Dell R740XD   2 X Intel Xeon Gold 6136    24 X 2.4TB 10K RPM SAS 12Gbps + 2 X 800GB SSD Write Intensive 12GB  384
MetaData  2 Dell R740XD   2 X Intel Xeon Gold 6136   24 X 2.4TB 10K RPM SAS 12Gbps + 2 X 800GB SSD Write Intensive 12GB  384
Login Nodes Manu  Model  CPU Spec   Memory /GB
Login Node  Dell  R640  2 X Intel Xeon Gold 5118   256 
Head Node  Dell  R640  2 X Intel Xeon Gold 5118  256 
Compute Nodes Manu Model  CPU Spec Memory/GB 
Sonic 1 (to be decommissioned 2022) Dell C6220 V2 2 X Intel E5-2660 v2 (2.2Ghz, 10 cores ) 128
Sonic 2 (to be decommissioned 2022) Dell C6220 V2  2 X Intel E5-2660 v2 (2.2Ghz, 10 cores ) 128  
Sonic 3 (to be decommissioned 2022) Dell C6220 V2  2 X Intel E5-2660 v2 (2.2Ghz, 10 cores ) 128
Sonic 4 (to be decommissioned 2022) Dell C6220 V2  2 X Intel E5-2660 v2 (2.2Ghz, 10 cores ) 128
Sonic 5 (to be decommissioned 2022) Dell C6220 V2  2 X Intel E5-2660 v2 (2.2Ghz, 10 cores ) 128
Sonic 6 (to be decommissioned 2022) Dell C6220 V2  2 X Intel E5-2660 v2 (2.2Ghz, 10 cores ) 128
Sonic 7 (to be decommissioned 2022) Dell C6220 V2  2 X Intel E5-2660 v2 (2.2Ghz, 10 cores ) 128 
Sonic 8 (to be decommissioned 2022) Dell C6220 V2  2 X Intel E5-2660 v2 (2.2Ghz, 10 cores ) 128
Sonic 21 (to be decommissioned 2022) Dell C6220 V2 2 X Intel E5-2620 v2 (2.1Ghz, 6 Cores) 256 
Sonic 22 (to be decommissioned 2022) Dell C6220 V2 2 X Intel E5-2620 v2  (2.1Ghz, 6 Cores) 256
Sonic 23 (to be decommissioned 2022) Dell C6220 V2 2 X Intel E5-2620 v2  (2.1Ghz, 6 Cores) 256
Sonic 24 (to be decommissioned 2022) Dell C6220 V2   2 X Intel E5-2620 v2  (2.1Ghz, 6 Cores) 256
Sonic 25 (to be decommissioned 2022) Dell C6220 V2  2 X Intel E5-2660 v2 (2.2Ghz, 10 cores ) 128 
Sonic 26 (to be decommissioned 2022) Dell C6220 V2  2 X Intel E5-2660 v2 (2.2Ghz, 10 cores ) 128 
Sonic 27 (to be decommissioned 2022) Dell  C6220 V2  2 X Intel E5-2660 v2 (2.2Ghz, 10 cores ) 128 
Sonic 28 (to be decommissioned 2022) Dell C6220 V2  2 X Intel E5-2660 v2 (2.2Ghz, 10 cores ) 128
Sonic 29 (to be decommissioned 2022) Dell C6220 V2  2 X Intel E5-2660 v2 (2.2Ghz, 10 cores ) 128 
Sonic 30 (to be decommissioned 2022) Dell C6220 V2  2 X Intel E5-2660 v2 (2.2Ghz, 10 cores ) 128
Sonic 31 (to be decommissioned 2022) Dell C6220 V2  2 X Intel E5-2660 v2 (2.2Ghz, 10 cores ) 128 
Sonic 32 (to be decommissioned 2022) Dell C6220 V2  2 X Intel E5-2660 v2 (2.2Ghz, 10 cores ) 128 
Sonic 33 (to be decommissioned 2022) Dell C6220 V2  2 X Intel E5-2660 v2 (2.2Ghz, 10 cores ) 128
Sonic 34 (to be decommissioned 2022) Dell C6220 V2  2 X Intel E5-2660 v2 (2.2Ghz, 10 cores ) 128 
Sonic 35 (to be decommissioned 2022) Dell C6220 V2  2 X Intel E5-2660 v2 (2.2Ghz, 10 cores ) 128
Sonic 36 (to be decommissioned 2022) Dell C6220 V2  2 X Intel E5-2660 v2 (2.2Ghz, 10 cores ) 128
Sonic 37 (to be decommissioned 2022) Dell C6220 V2  2 X Intel E5-2660 v2 (2.2Ghz, 10 cores ) 128
Sonic 38 (to be decommissioned 2022) Dell C6220 V2  2 X Intel E5-2660 v2 (2.2Ghz, 10 cores ) 128 
Sonic 39 (to be decommissioned 2022) Dell  C6220 V2  2 X Intel E5-2660 v2 (2.2Ghz, 10 cores ) 128
Sonic 40 (to be decommissioned 2022) Dell  C6220 V2  2 X Intel E5-2660 v2 (2.2Ghz, 10 cores ) 128
Sonic 43 Dell  R640 2 X Intel Xeon Gold 6152 (2.1GHz, 22 cores) 384
Sonic 44 Dell  R640 2 X Intel Xeon Gold 6152 (2.1GHz, 22 cores) 384 
Sonic 45 Dell  R640 2 X Intel Xeon Gold 6152 (2.1GHz, 22 cores) 384 
Sonic 46 Dell  R640 2 X Intel Xeon Gold 6152 (2.1GHz, 22 cores) 384
Sonic 47 Dell  R640 2 X Intel Xeon Gold 6152 (2.1GHz, 22 cores) 384 
Sonic 48 Dell  R640 2 X Intel Xeon Gold 6152 (2.1GHz, 22 cores) 384 
Sonic 49 Dell  R640 2 X Intel Xeon Gold 6152 (2.1GHz, 22 cores) 384 
Sonic 50 Dell  R640 2 X Intel Xeon Gold 6152 (2.1GHz, 22 cores) 384 
Sonic 51 Dell  R640 2 X Intel Xeon Gold 6152 (2.1GHz, 22 cores) 384 
Sonic 52 Dell  R640 2 X Intel Xeon Gold 6152 (2.1GHz, 22 cores) 384 
Sonic 53 Dell  R640 2 X Intel Xeon Gold 6152 (2.1GHz, 22 cores) 384 
Sonic 54 Dell  R640 2 X Intel Xeon Gold 6152 (2.1GHz, 22 cores) 384 
Sonic 55 Dell  R640 2 X Intel Xeon Gold 6152 (2.1GHz, 22 cores) 384 
Sonic 56 Dell  R640 2 X Intel Xeon Gold 6152 (2.1GHz, 22 cores) 384 
Sonic 57 Dell  R640 2 X Intel Xeon Gold 6152 (2.1GHz, 22 cores) 384 
Sonic 58 Dell  R640 2 X Intel Xeon Gold 6152 (2.1GHz, 22 cores) 384 
Sonic 59 Dell  R640 2 X Intel Xeon Gold 6152 (2.1GHz, 22 cores) 384
Sonic 60 Dell  R640 2 X Intel Xeon Gold 6152 (2.1GHz, 22 cores) 384
Sonic 61 Dell R640 2 X Intel Xeon Gold 6152 (2.1GHz, 22 cores) 384 
Sonic 62 Dell  R640 2 X Intel Xeon Gold 6152 (2.1GHz, 22 cores) 384 
Sonic 63 Dell R640 2 X Intel Xeon Gold 6252 (2.1Ghz, 24 cores) 384
Sonic 64 Dell R640 2 X Intel Xeon Gold 6252 (2.1Ghz, 24 cores) 384
Sonic 65 Dell  R640 2 X Intel Xeon Gold 6252 (2.1Ghz, 24 cores) 384
Sonic 66 Dell R640 2 X Intel Xeon Gold 6252 (2.1Ghz, 24 cores) 384
Sonic 67 Dell R640 2 X Intel Xeon Gold 6252 (2.1Ghz, 24 cores) 384
Sonic 68  Dell R640 2 X Intel Xeon Gold 6252 (2.1Ghz, 24 cores) 384
Sonic 69  Dell R640 2 X Intel Xeon Gold 6252 (2.1Ghz, 24 cores) 384
Sonic 70  Dell  R640 2 X Intel Xeon Gold 6252 (2.1Ghz, 24 cores) 384
Sonic 71 Dell  R640 2 X Intel Xeon Gold 6252 (2.1Ghz, 24 cores) 384
Sonic 72  Dell  R640 2 X Intel Xeon Gold 6252 (2.1Ghz, 24 cores) 384
Sonic 73  Dell R640 2 X Intel Xeon Gold 6252 (2.1Ghz, 24 cores) 384
Sonic 74  Dell  R640 2 X Intel Xeon Gold 6252 (2.1Ghz, 24 cores) 384
GPU Node Manu  Model  CPU Spec  & GPU Spec Memory/GB
GPU 1 Dell R740XD 2 X Xeon 6140  (2.3Ghz, 18 Cores) & 2 Nvidia Tesla V100 (32GB) 256
GPU 2 Dell R740XD  2 X Xeon 6140  (2.3Ghz, 18 Cores) & 2 Nvidia Tesla V100 (32GB) 256 
GPU 3 Dell R740XD  2 X Xeon 6140  (2.3Ghz, 18 Cores) & 2 Nvidia Tesla V100 (32GB) 256 
GPU 4 Dell  R740 2 X Xeon 6240 (2.1Ghz, 18 Cores) & 2 Nvidia Tesla V100 (32GB) 384
GPU 5 Dell R740 2 X Xeon 6240 (2.1Ghz, 18 Cores) & 2 Nvidia Tesla V100 (32GB) 384
GPU 6 Dell R7525 2 X AMD 7452 (2.35GHz, 32 Cores) & 2 Nvidia Tesla A100 (40GB)  384
GPU 7 Dell  R7525 2 X AMD 7452 (2.35GHz, 32 Cores) & 2 Nvidia Tesla A100 (40GB) 384
High Memory Node Dell  Model CPU Spec

Memory/GB
Mem3 Dell R640 2 X Intel Xeon 6140  (2.3Ghz, 18 Cores) 1536
Below is a topology of the Infrastructure servers on Sonic illustrating both the compute Infiniband network or the Ethernet services network 

UCD IT Services

Computer Centre, University College Dublin, Belfield, Dublin 4, Ireland.

Contact us via the UCD IT Support Hub: www.ucd.ie/ithelp