Software development

HPC-Europa3: an overview

Author: Catherine Inglis
Posted: 26 Apr 2018 | 12:13

The HPC-Europa3 Transnational Access programme includes access to world-class HPC systems and scientific collaboration with host researchers in any field. If you want to find out more about the programme then this video, originally part of the ARCHER series of webinars, is an excellent starting point.

March 2018 meeting of the MPI Forum

Author: Daniel Holmes
Posted: 21 Apr 2018 | 16:21

In the March 2018 meeting of the MPI Forum, the “Persistent Collectives” proposal began the formal ratification procedure, the “Sessions” proposal took a step forward, but the “Fault Tolerance” saga took a step side-ways.

The proposal to add persistent collective operations to MPI was formally read at the March meeting, and was well-received by all those present. The first vote for this proposal will happen in June and the second vote in September. If all goes well, this addition to MPI will be announced at SC18.

Event Driven Asynchronous Tasks

Author: Nick Brown
Posted: 5 Apr 2018 | 10:28

The INTERTWinE project has spent a lot of effort addressing interoperability challenges raised by task-based models. By rethinking parallelism in the paradigm of tasks, one reduces synchronisation and decouples the management of parallelism from computation.

This is really attractive but existing models typically rely on shared memory, where the programmer expresses input and output dependencies of tasks based upon variables, which in turn limits the technology to a single memory space – often a node of an HPC machine. So to then scale up beyond a single memory space we must combine a task model with distributed memory technology, such as MPI or GASPI, and this has been a focus for a number of activities in INTERTWinE.

Installing Python packages in virtual environments

Author: Mario Antonioletti
Posted: 22 Mar 2018 | 11:46

I recently looked into whether the Python package PyQt5 could be installed on Cirrus, a Tier-2 national service, on behalf of one of our HPC Europa visitors. The Cirrus documentation recommends that you do this using virtual environments and provides a helpful example. However, the problem is that if you subsequently use pip or easy_install to install additional Python packages within the virtual environment you will get a permission denied as it tries to install the package centrally to directories you do not have access rights to. I eventually managed to find a solution.

The Message Passing Interface: On the Road to MPI 4.0 and Beyond (SC17 event)

Author: Daniel Holmes
Posted: 8 Nov 2017 | 10:23

This year’s MPI Birds-of-a-Feather meeting at SC17 will be held on Wednesday 15th November. I’ll be talking about the Sessions proposal – and explaining why it’s no longer called Sessions!

Spoiler: the working group has been looking at how Teams might interact with Endpoints.

Distributed ledgers for carbon markets

Author: Adrian Jackson
Posted: 10 Aug 2017 | 20:22

Distributed ledgers, the core technology underlying digital currencies such as BitCoin, offer some interesting functionality for constructing distributed data infrastructures.Ledger

Ledgers can be considered to be simple data stores. They are styled on accounting ledgers, books where transactions are recorded one after the other, and the overall state of the accounts can be evaluated by working through the recorded transactions to calculate how much money has flowed in and out of the accounts.

Building earthquake resilience in at-risk communities

Author: Rob Baxter
Posted: 15 Jun 2017 | 13:33

Earthquakes have caused over three-quarters of a million deaths already in this century, and economic losses of over a quarter of a trillion US dollars since 1980, make them by far the most destructive of the natural hazards. EPCC has been involved in developing a new app that will lessen the danger of aftershocks.

CompBioMed Centre of Excellence in Computational Biomedicine

Author: Gavin Pringle
Posted: 15 Jun 2017 | 13:19

EPCC is one of 15 core partners in CompBioMed. This user-driven Centre of Excellence in Computational Biomedicine will nurture and promote the uptake and exploitation of high performance computing within the biomedical modelling community. Its users come from academia, industry and clinical practice.

Balancing act: optimise for scaling or efficiency?

Author: Adrian Jackson
Posted: 24 May 2017 | 19:30

When we parallelise and optimise computational simulation codes we always have choices to make. Choices about the type of parallel model to use (distributed memory, shared memory, PGAS, single sided, etc), whether the algorithm used needs to be changed, what parallel functionality to use (loop parallelisation, blocking or non-blocking communications, collective or point-to-point messages, etc).

Speeding up Python on ARCHER

Author: Nick Johnson
Posted: 21 May 2017 | 16:12

45 minutes is a long time for a computer: 2,700 long seconds. For a supercomputer like ARCHER that's a lot of time to spend getting ready to do work, but this is the problem faced by the firedrake team who we work with as part of the Marine Technology project.