Modelling the earth’s geomagnetic environment on Cray machines using PETSc and SLEPc

Nicholas Brown, Brian Bainbridge, Ciaran D Beggan, William Brown, Brian Hamilton, Susan Macmillan

Research output: Contribution to journalSpecial issuepeer-review

Abstract / Description of output

The British Geological Survey's global geomagnetic model, Model of the Earth's Magnetic Environment (MEME), is an important tool for calculating the strength and direction of the Earth's magnetic field, which is continually in flux. Whilst the ability to collect data from ground based observation sites and satellites has grown rapidly, the memory bound nature of the original code has proved a significant limitation in modelling problem sizes required by modern science. In this paper we describe work done replacing the bespoke, sequential, eigen-solver with that of the PETSc/SLEPc package for solving the system of normal equations. Adopting PETSc/SLEPc also required fundamental changes in how we built and distributed the data structures and as such we describe an approach for building symmetric matrices that provides good load balance and avoids the need for close co-ordination between the processes or replication of work. We also study the memory bound nature of the code from an irregular memory accesses perspective and combine detailed profiling with software cache prefetching to significantly optimise this. Performance and scaling characteristics are explored on ARCHER, a Cray XC30, where we achieved a speed up for the solver of 294 times by replacing the model's bespoke approach with SLEPc.
Original languageEnglish
Article numbere5660
Number of pages15
JournalConcurrency and Computation: Practice and Experience
Issue number20
Early online date8 Jan 2020
Publication statusPublished - 25 Oct 2020


Dive into the research topics of 'Modelling the earth’s geomagnetic environment on Cray machines using PETSc and SLEPc'. Together they form a unique fingerprint.

Cite this