Christmas Closure 2022

Please note that due to college closure for Christmas, there will be minimal customer support after Tuesday 21st Dec 2022 until the college re-opens on the 3th January 2023. Please exercise awareness of any impact your jobs may be having during this time, and practice good cluster etiquette. Any support tickets raised during this period will be dealt with on...

in news, Dec 12, 2022

Migrating to a new research storage system

As the current 2 PetaByte Research Data Storage on Apocrita reaches end of life this summer, we have procured a new storage system, providing 5PB of capacity. This means faster, bigger and cheaper storage for you, the researcher! Read on to discover the benefits…but first, an important notice.

in news, Jun 27, 2022

Christmas Closure 2021

Please note that due to college closure for Christmas, there will be minimal customer support after Tuesday 21st Dec 2021 until the college re-opens on the 4th January 2022. Please exercise awareness of any impact your jobs may be having during this time, and practice good cluster etiquette. Any support tickets raised during this period will be dealt with on...

in news, Dec 07, 2021

A guide to using Apocrita's scratch storage

The Apocrita scratch storage is a high performance storage system designed for short-term file storage, such as working data. We recently replaced the hardware that provides this service, and expanded the capacity from 250TB to around 450TB. This article will look at the recent changes, and suggest some best practices when using the scratch system.

in news, Jun 24, 2021

ITS Research FAQ regarding use of services during COVID-19 pandemic

As a result of the large-scale shift to remote working due to the COVID-19 pandemic, we have been asked various questions relating to computational research, which we’ll try to address below. We’ve seen an increase in the number of new account requests for the HPC service, and we realise there will be quite a few users wishing to run workloads...

in news, Mar 19, 2020

Apocrita newsletter - March 2020

Here is a round-up of recent QMUL HPC cluster news from the ITS Research team, including information about new compute nodes.

in news, Mar 01, 2020

Christmas Closure 2019

Please note that due to college closure for Christmas, there will be minimal customer support after Monday 23rd Dec 2019 until the college re-opens on the 2nd January 2020. Please exercise awareness of any impact your jobs may be having during this time, and practice good cluster etiquette. Any support tickets raised during this period will be dealt with on...

in news, Dec 20, 2019

Simplification of parallel queues on Apocrita

We are simplifying the way that the multi-node parallel jobs are run on the cluster.

in news, Jun 27, 2019

Cluster update summary

As part of our commitment to providing stable and manageable systems, here is a round-up of some recent updates we have been working on behind the scenes:

in news, Jun 12, 2019

Storage Upgrade June 2019

Apocrita Research Data Storage: Notice of “at risk” period

in news, Jun 12, 2019

GitHub Enterprise Maintenance 02/05/2019

On Thursday 02/05/2019 at 10:00 the GitHub Enterprise instance will be taken down for maintenance to increase the disk capacity that contains user data as it is currently over 80% full.

in news, Apr 26, 2019

New high performance storage for scratch data

We are pleased to announce a new scratch storage array that is based on fast NvME based hardware. This will hopefully make I/O related tasks much faster

in news, Mar 20, 2019

NAG Fortran compiler available on Apocrita for SEF

We have installed the NAG Fortran compiler on Apocrita for use by researchers from the School of Economics and Finance. In this post we look at how to access the compiler, why we may want to use it, and what we have to pay special attention to.

in news, Mar 18, 2019

GitHub Enterprise Upgrade 2.16

On Wednesday 2019-02-20 at 14:00 we will be applying an upgrade to our GitHub Enterprise instance to version 2.16.2, which includes bug fixes and the latest security updates.

in news, Feb 14, 2019

Cluster Hardware Upgrades and Additions

As part of our commitment to regular upgrades to the HPC service, and to keep up with ever-growing demand, we are pleased to announce the addition of new hardware to the Apocrita HPC Cluster for the benefit of all QMUL Researchers.

in news, Dec 04, 2018

GitHub Enterprise Upgrade 2.15

On Wednesday 2018-11-21 at 14:00 we will be applying an upgrade to our GitHub Enterprise instance to version 2.15.2, which includes bug fixes and the latest security updates.

in news, Nov 19, 2018

AI tools

For the increasing number of Researchers working with Deep Learning technologies, we also have the existing GPU nodes attached to Apocrita. Tensorflow is available, and we are working on adding more machine learning tools.

in news, Sep 15, 2018

AI tools

QMUL have access to powerful Tier 2 (formerly known as Regional) HPC resources, predominantly for EPSRC researchers. If you run multi-node parallel code (using MPI, for example), you will likely benefit from using the Tier2 clusters.

in news, Sep 15, 2018

Home and Group Directories

During the summer, home directories were migrated to the new storage platform. This means that quotas have grown slightly as the underlying block size has increased.

in news, Sep 15, 2018

Deprecated modules

We removed some problematic module files. Please check your job scripts for use of these modules:

in news, Sep 15, 2018

Short queue

Please note that frontend/login nodes are for preparing and submitting your job scripts and running computational tasks directly on the frontend nodes is forbidden, since it can impair the use of the node for the 100+ other users logged in.

in news, Sep 15, 2018

Decommissioning of ccn nodes

The ccn nodes have been removed to make way for the new sdv nodes. The nodes were very old, had become unreliable, and were an inefficient use of space and power.

in news, Apr 05, 2018

New cluster announcement

We are pleased to announce that the new cluster is available for general use. This has been a large project, involving the following:

in news, Jul 11, 2017

Midplus Consortium

The Midlands Plus consortium have now deployed a new 14,000 core cluster, located in Loughborough. You can hear more about this from your local institution.

in news, Jul 11, 2017

1PB added storage

We recently added an additional petabyte of storage, it is necessary to move all files to the new storage to benefit from improved performance.

in news, Mar 20, 2017


Comparing common compression tools using real-world data

Compression tools can significantly reduce the amount of disk space consumed by your data. In this two-part article, we will look at the effectiveness of some compression tools on real-world data sets, make some recommendations, and perhaps persuade you that compression is worth the effort.

in article, Oct 10, 2019

Performance testing with NVMe storage and Spectrum Scale 5

We have recently procured 120TB of NVMe based SSD storage from E8 Storage for the Apocrita HPC Cluster. The plan is to deploy this to replace our oldest and slowest provision of scratch storage.

in article, Dec 19, 2018

Python performance in containers

Singularity is a container solution designed for HPC. Due to the secure and simple design, it can be easily used to provide applications for use with HPC clusters where other containers, such as Docker would not be suitable.

in article, Jul 03, 2017


Modules Update December 2022

Since the last module update in December 2021, we have:

in modules, Dec 12, 2022

Modules Update December 2021

Since the last module update in December 2019, we have:

in modules, Jan 06, 2022

Modules Update December 2019

Since the last module update in August, we have added 22 modules to dev, added 22 modules to production and removed 4 modules.

in modules, Dec 11, 2019

Modules Update August 2019

Since the last update in April, we have updated the following module files:

in modules, Aug 09, 2019

Modules Update April 2019

Since the last update in March, we have updated the following module files:

in modules, Apr 26, 2019

Modules Update March 2019

Since the last update (on 29/11/2018), we have updated the following module files:

in modules, Mar 11, 2019

Update of environment modules to version 4.2.1

We have deployed the latest version of Environment Modules (4.2.1) across the cluster on all frontend and compute nodes.

in modules, Jan 18, 2019

Development modules update

We have moved the following modules from dev to deprecated:

in modules, Nov 29, 2018

Deprecated openmpi 2.0.2-gcc module

We identified a problem with the openmpi/2.0.2-gcc module and have removed it as the correct interface was not being used for the MPI communication between nodes. This resulted in potentially much slower communication and consequently jobs taking longer to run.

in modules, Apr 05, 2018


Intel Inspector 2022.2 on Apocrita

As the complexity of HPC applications increases, the management of memory and threading scopes becomes increasingly important. Tools like Intel Inspector are crucial in this context, to effectively identify and resolve a wide array of memory errors and thread synchronisation issues.

in rse, Apr 25, 2023

RSE team activities up to June 2022

The RSE team in ITS Research has had a busy few years since we started sharing our work in this blog. In this post we look at some highlights of recent activity and what we have to look forward to.

in rse, Jun 27, 2022

Speeding up and Parallelising R packages (using Rcpp and C++)

Polytomous variables can be used to model data that has two or more possible outcomes. For example, a survey with multiple-choice questions is polytomous. The R package, poLCA, does statistical clustering of polytomous variables. For example, grouping together survey results that are similar to each other.

in rse, Jun 13, 2022

Assessing code quality with the NAG Fortran compiler

The NAG Fortran compiler, like other compilers, has diagnostic capabilities which can help us write correct and portable Fortran programs. In this post we’ll look at these, comparing with those of the GCC and Intel compilers, and see how the compiler can be a valuable tool when developing or maintaining Fortran code.

in rse, May 20, 2022

Using compiler options to help debug programs

Once we’ve written a program more advanced than our “Hello, world!” example, we’re going to make mistakes. In this post, we’ll look at how we can use the very compilers we’re using to compile our program to pick up on some of these mistakes.

in rse, May 11, 2022

Introducing Sherman Lo, RSE

Hello! I am Sherman and I have just joined the RSE team at Queen Mary. Glad to meet you all!

in rse, Jan 26, 2022

One year of code review club with the William Harvey Research Institute

Over the past year, researchers from QMUL’s William Harvey Research Institute (WHRI) have engaged on a collaborative code review club. Through this collaborative effort the group aims to peer review the computational components of their research and provide code quality assurance to all involved researchers. Additionally, the Research Software Engineering group of ITS Research has been assisting the group with...

in rse, Dec 21, 2021

Introductory computing skills for researchers: Software Carpentry with RSLondon

Research Software London is a community to support the use and development of research software in London and the South East. Since 2019, RSLondon has run a number of Software Carpentry workshops to teach introductory computing skills to researchers. ITSR have been involved in these efforts, providing instructors and helpers at each of these workshops.

in rse, Dec 16, 2021

Comparison of Python Distributions on Apocrita

When it comes to picking a distribution, Python programmers are spoilt for choice. We’re going to compare two of the most popular (CPython and Anaconda) and one that promises big performance improvements with relatively little hassle (Intel Distribution for Python).

in rse, Dec 01, 2021

Jigsaws with GIMP and Python

Jigsaw puzzles proved wildly popular during lockdown, but they weren’t all done on the dining room table on rainy afternoons. The puzzle faced by researchers from the School of English and Drama (SED), lead by Dr Richard Coulton and in collaboration with the Natural History Museum, was to piece together a set of beautiful botanical watercolours brought back from China...

in rse, Aug 03, 2021

Using Apocrita's GPUs with OpenMP

On Apocrita we can use OpenMP to execute code on GPU devices. This post looks at how to compile such programs and submit them to run on the GPU nodes. The post assumes that you have code, already developed and tested, which is ready for deployment, and that you have been granted access to the GPU nodes.

in rse, Jul 02, 2021

Faster Fast Fourier Transforms in Python

A little while ago, we were approached by a researcher from the School of Mathematical Sciences with the classic request of “I’d like my code to run more quickly”. They were simulating a ball bouncing around a billiard table over the course of millions of collisions and analysing patterns in the path of the ball (this type of problem is...

in rse, Jun 11, 2021

Intel Parallel Studio XE 2020 update 4

The Intel Parallel Studio XE Cluster Edition 2020 update 4 suite is now installed and available on Apocrita. This release will be the last of the Parallel Studio releases we support, as Intel is moving to its “oneAPI” model of bundling.

in rse, Apr 22, 2021

Remote development on Apocrita with Visual Studio Code

Visual Studio Code (VS Code) is an open-source and lightweight text editor from Microsoft, and distinctly different from Visual Studio. In this short tutorial we aim to set up VS Code for remote interfacing and development on Apocrita, to edit, save, and manipulate our files and directories.

in rse, Feb 08, 2021

Parameterized derived types in Fortran - introduction

User-defined data types in Fortran may have parameters which control certain aspects of their definition. In this post we look at what these parameterized types are, how they are used and what benefits they may offer to the programmer.

in rse, Sep 10, 2020

Introducing Iain Stenson, RSE

Hello. I’m Iain, the newest recruit to the QMUL ITSR RSE team. We are the group of software engineers within ITS Research who help people at Queen Mary write readable, correct and high-performance research software.

in rse, Jul 13, 2020

Apocrita says Hello, world!: basic use of our cluster

A common first program to write in a new language is a “Hello world” example where we print a simple line of output. In this tutorial we first look at examples written in C, C++ and Fortran. To run the examples we’ll learn about interactive sessions on compute nodes, modules and compiling source code. We’ll also look at examples in...

in rse, Feb 12, 2020

When good compilers go bad

Many people rely on compilers, for languages such as C, C++ and Fortran, to create executable programs from source code. Just like our source code, compilers themselves may have bugs. In this post we look at common forms of compiler bug, with examples, and what we can do when our work is affected by such an issue.

in rse, Dec 16, 2019

Getting REAL with Fortran

Fortran provides a variety of intrinsic representations of real numbers. In this post we look at what these representations are and how we choose a particular representation for our work.

in rse, Jun 12, 2019

Using Ford to document Fortran programs

Ford is a tool which can help document Fortran source code. Here we show how to use Ford and the value of automatic documentation generation.

in rse, Dec 19, 2018

What is the ITSR RSE team?

ITS Research has a Research Software Engineering team. This post introduces the team and how it supports research in Queen Mary University of London. You can also see how to contact the team and why you may want to.

in rse, Dec 10, 2018


Creating and Using Private Modules

Modules are the centralised method of accessing different software on an HPC cluster. By using a variety of modules you can quickly and easily access different versions of applications and create work flows that suit particular projects. The modules offered on Apocrita cover a wide range of applications but there will always be situations that require something unusual or a...

in tutorial, Mar 24, 2023

Installing Anaconda packages more quickly using Mamba

The ITSR support team often receive tickets from Anaconda users concerned that creating environments and installing packages is taking quite a long time. We recently installed Miniconda as a module on Apocrita, which enables users to install packages using the Mamba libsolver.

in tutorial, Feb 03, 2023

Speeding Up Grep Searches

Sometimes you may find yourself needing to filter a large amount of output using the grep command. However, grep can sometimes struggle when you try to filter files with an incredibly large number of lines, as it loads each line into RAM line-by-line. This can mean you can quickly exhaust even large amounts of requested RAM. There are a few...

in tutorial, Oct 27, 2022

R Tutorial Part Two - R vs RStudio

Following up from part one of our R tutorial we’ll be taking a look at the differences between R - the command-line language which can be loaded as a module and used in your Apocrita batch jobs - and Rstudio - the graphical development environment, accessed via a web server and provided via the OnDemand service.

in tutorial, Aug 11, 2022

R Tutorial Part One - Top Tips

The ITSR support team often receive tickets from R users that cover similar ground. So we thought we would collate our most frequent responses into some “Top Tips”! The tips below apply equally to Rscript but this article only covers the interactive R program.

in tutorial, Jul 06, 2022

Using job statistics to increase job performance and reduce queueing time

You may wonder why some jobs start immediately but some wait in the queue for hours or days, even if your job is quite simple. If you notice your job has been queueing for a while, you may want to consider adjusting the requested resources to reduce queueing time and reduce any potential resource wastage as the job runs. Below,...

in tutorial, Jun 15, 2022

Visualising HEALPix results with Jupyter Notebook

In this tutorial we’ll be showing you how to visualise HEALPix results using Jupyter Notebook in our OnDemand appliance on the Apocrita HPC cluster. We’ll start with installing the required Python packages before demonstrating how to run the Healpy tutorial

in tutorial, Mar 07, 2022

File Permissions

An understanding of file permissions is important to the success of computational jobs, and the security of your files.

in tutorial, Jan 10, 2022

Running Machine Learning workloads on Apocrita

In this tutorial we’ll be showing you how to run a TensorFlow job using the GPU nodes on the Apocrita HPC cluster. We will expand upon the essentials provided on the QMUL HPC docs site, and provide more explanation of the process. We’ll start with software installation before demonstrating a simple task and a more complex real-world example that you...

in tutorial, Oct 14, 2021

SSH authentication and regaining access to Apocrita

In response to a coordinated security attack on HPC sites world-wide, it has been necessary to implement some changes to enforce a higher level of authentication security. In this article, we begin with providing some useful information to understand key-based authentication, and document the process for regaining access to the cluster; SSH keys and passwords were revoked for all users...

in tutorial, Jun 12, 2020

Productivity tips for Apocrita cluster users

This article presents a selection of useful tips for running successful and well-performing jobs on the QMUL Apocrita cluster.

in tutorial, Oct 23, 2019

Sizing your Apocrita jobs for quicker results

At any one time, a typical HPC cluster is usually full. This is not such a bad thing, since it means the substantial investment is working hard for the money, rather than sitting idle. A less ideal situation is having to wait too long to get your research results. However, jobs are constantly starting and finishing, and many new jobs...

in tutorial, Jan 28, 2019