HPC summer school 2016


The HPC summer school 2016 brings together the scientific community, external lecturers, SGI experts and the HPC team for one week of tutorials, lectures and exchange of ideas.

The programme includes a code optimisation tutorial, one day of performance tuning for cx2 (helen) and a two day MPI class.  On Friday, we'll host six community sessions on imaging, research software engineering, computational molecular sciences, genomics, research data management and simulation methods. The event concludes with a keynote lecture on compilers, HPC prize announcement and a reception.


Dates: September 26-30, 2016
Venue: Huxley  (building 13 on the map)
Campus: Imperial College London, South Kensington campus
Organizers: HPC Service and Computational Methods Hub
Registration: You can register for the whole week or for individual events separately
Questions: Katerina Michalickova for organizational issues or Simon Burbidge


View the programme

Registration link


Announcing the 2016 Imperial College High Performance Computing Prize

The Imperial College high performance computing prize will be awarded to early career researchers (PhD student, PDRA or equivalent level) for work that is either:

·      best advance in the field of high performance computing, or,
·      most effectively exploits high performance computing to achieve an advancement in another field of science or engineering.

Candidates are invited to submit a peer reviewed article published within the last two years (i.e. published after 1 September 2014), along with a short description of the significance of the work (maximum of 200 words). In the case of a multi-authored paper, the leading authors should be early career researchers.

The winning entry will receive a cash prize of £1,000 and will be awarded at the HPC Summer School on Friday September the 30th

Submissions should be sent by email to cmse@imperial.ac.uk with the subject heading "Imperial College HPC prize entry" before 16:00 on September 16th, 2016.



Monday, September 26th
10:00-17:00, Huxley LT 340
(coffee breaks in 341) 
Code optimisation workshop [info]
Fabio Baruffa, Leibniz Supercomputing Centre
Tuesday, September 27th
10:00-17:00, Huxley LT 340
(coffee breaks and lunch in Blackett, concourse lvl 2)
HPC performance tuning for cx2 (helen) [info]
James Southern, Gabriel Koren, SGI
Wednesday, September 28th
10:00-16:00, Huxley LT 340
(coffee breaks in 341)
Message Passing Interface (MPI) workshop [info]
Victor Eijkhout, Texas Advanced Computing Center
Thursday, September 29th
10:00-16:00, Huxley LT 340
(coffee breaks provided 341)
Advanced MPI workshop [info]
Victor Eijkhout, Texas Advanced Computing Center
Friday, September 30th
time track 1, Huxley LT 308 track 2, Huxley LT 311 track 3, Huxley 342
10:00-12:00 HPC community for Molecular Computational Sciences [info]
chair: Alexandra Simperler, Dept of Chemistry
Research Software Engineering monthly event [info]
chair: Jeremy Cohen, Dept of Computing

including: Victor Eijkhout, TACC: Parallel Programming for the 21st Century
Genomics/Bioinformatics in HPC [info]
chair: Sarah Butcher, Head of Bioinformatics Support Service, Dept of Surgery & Cancer
Huxley 341
Catered lunch
13:00-14:50 HPC community session in Imaging [info]
chair: Lluis Guasch, Dept of Earth Science & Engineering
PRISM - Platform for Research in Simulation Methods [info]
chair: Chris Cantwell, Dept of Aeronautics
Research Data Management community session [info]
chair: Henry Rzepa, Dept of Chemistry
Huxley LT 308
Keynote lecture:
What your compiler can do, what it will do, and what you might hope it could do [info]
Professor Paul Kelly, Department of Computing
Huxley LT 308
Closing remarks
ACM Gordon Bell Prize 2016 nominee Peter Vincent, Dept of Aeronautics and Simon Burbidge, Manager of HPC Service
Huxley 341
Reception with food and drinks



Fabio Baruffa has been a Senior HPC Application Specialist at Leibniz Supercomputing Centre (LRZ) in Munich since 2016. Before, he was working as an HPC researcher at Max-Planck Computing and Data Facility (MPCDF), Jülich Research Center and Cineca Supercomputing where he was involved in HPC software development and analysis of scientific code. His main research interests are in the area of computational methods and optimizations for HPC systems. He holds a PhD in Physics from University of Regensburg for his research in the area of spintronics device and quantum computing.

Victor Eijkhout has a degree in numerical analysis from the Katholieke Universiteit Nijmegen, specializing in parallel linear algebra. He has since held positions at the University of Illinois, University of California Los Angeles, and the Unversity of Tennessee at Knoxville, joining TACC’s HPC group in 2005. He has published numerous articles in scientific computing, as well as textbooks on iterative methods, scientific computing, and parallel programming in MPI/OpenMP. His current research interest is in systematic approaches to deriving parallel programs.

James Southern has been a Senior Applications Engineer in the HPC Applications and Performance Engineering group at SGI since 2014. He works on code porting, optimization and benchmarking for SGI systems, including on strategic collaborations with customers. Before joining SGI he was a Principal Researcher at Fujitsu Laboratories of Europe, where he worked on the development of scalable software for high performance computing. He has an DPhil degree in Computational Physiology from the University of Oxford.

Gabriel Koren is Senior Solutions Architect at SGI France. He has been working at SGI since 2001. His main duties include system architecture, program optimization, benchmarking and consulting. He holds a PhD in Physics from the Institute of Theoretical and Applied Optics, University of Paris XI, France.

Workshops and sessions

What your compiler can do, what it will do, and what you might hope it could do

keynote by Paul Kelly, Dept of Computing
Friday September 30th, 15:00 - 16:00, Huxley LT308

Compilers mediate between the high-level language with which we want to think about programming, and the low-level details of registers, memory and control flow. For high-performance computing, we face challenges from the complexity of the hardware and the need for managing parallelism, locality and data movement. This talk will explore some of the things compilers can do, and some of the good reasons why optimisations and parallelisation that “should” be applicable do not happen automatically. This often leads programmers into explicit, low-level code to implement the right thing manually. We have become used to the idea that we have to program at a low level for performance. I will show some examples from our research on domain-specific optimisations that suggests that the opposite can be true – by providing the compiler with a higher level, more abstract representation, it can generate better code – perhaps even, better code than could reasonably be written by hand. This is joint work with colleagues on the Firedrake project (David Ham, Lawrence Mitchell, Fabio Luporini and others), and other collaborators.


MPI workshop

Wednesday September 28th (introduction) and Thursday September 29th (advanced), 10:00-16:00, Huxley LT340
instructor: Victor Eijkhout, TACC

This two-day workshop will instill in the participants fluency in the basic MPI constructs through a series of practical programming exercises. Participants will learn collectives, two-sided communication, communicators, derived datatypes and the basics of one-sided communication.

The emphasis of this workshop will be on doing hands-on exercises; there will be little lecturing. Participants should have a basic command of Unix and a common Unix editor such as Vi or Emacs. Exercises can be done in C and Fortran. 

Please bring your own laptop with an ssh client, we'll log into the cx1 cluster for exercises.  If needed, guest accounts will be provided.


HPC performance tuning for cx2 (helen)

Tuesday September 27th, 10:00 - 17:00, Huxley LT340
instructors: James Southern, Gabriel Koren, SGI

Overview of the cx2 supercomputer, including:

  • The SGI ICE X architecture.
  • Compute nodes: Westmere, Sandy Bridge, Haswell and Broadwell CPUs.
  • Interconnect: overview of SGI’s hypercube topology

Compiling optimized code for cx2:

  • Overview of the Intel compiler suite.
  • Vectorization flags for the different node types. 

Run-time performance tuning:

  • Process placement with SGI omplace and dplace.
  • Tuning SGI MPT performance with environment variables.

Tools for performance monitoring on SGI ICE X:

  • MPInside – an MPI application performance analysis and diagnostic tool.
  • Perfsuite – a sequential performance profiler. 

Hands-on session:

  • Bring-your-own code and apply the tools and methods discussed earlier in the day (with assistance from SGI engineers).

Please bring your own laptop with an ssh client, we'll log into cx2 for hands-on.



Code optimisation workshop

Monday September 26th, 10:00 - 17:00, Huxley LT340
instructor: Fabio Baruffa, Leibniz Supercomputing Centre

The code optimization workshop is a compact course on techniques and methods on how to improve your code and explore the new hardware features of the latest Intel® processor. An overview of the Intel® tools, such as VTune Amplifier and Advisor, is also provided together with examples and use cases.

The outline:

  • Modern computer architecture
  • Cache and memory system
  • Optimization process and vectorisation
  • Profiling tools
  • Intel® math kernel library (MKL)

Please bring your own laptop with an ssh client, we'll log into the cx1 cluster for exercises.  If needed, guest accounts will be provided.



HPC community for Molecular Computational Sciences

Friday September 30th, 10:00 - 12:00, Huxley LT308
chair: Alexandra Simperler, Dept of Chemistry


  • Alexandra Simperler: Review of EPSRC UK National Service for Computational Chemistry Software (NSCCS) and HPC collaboration
  • Enrico Berardo, Dept of Chemistry: Evolutionary algorithms for the efficient design of functional materials

Evolutionary algorithms belong to the class of approaches inspired by Darwin's theory of evolution and pit candidate materials against each other as with the "survival of the fittest" in nature. Each generation of candidates is tested with simple calculations that predict their properties as a measure of their fitness. The fittest candidates are most likely to survive to the next generation, but also random mutations of their features will occur and pairs of candidates will parent new offspring with mixtures of their features. In my talk I will be discussing about the development of an evolutionary algorithm for the efficient design of two domains of functional materials; porous organic cages for capture and separation and small organic molecules for photocatalytic applications.

  • Matthew Kirby, Dept of Earth Sciences and Engineering: Using DFT to help understand the effects of organic ligands on uranium mobility in the subsurface

In the United Kingdom, uranium makes up the largest radionuclide by mass of radioactive waste. The waste will be disposed of either at the near surface or at depth, and will use cement as a grout and backfill. Over time the waste canisters will fail and cement will degrade leading to uranium transport in a high pH and high ionic strength plume. Siderophores, a group of organic ligands produced by bacteria, fungi and plants have been found to enhance the mobility of uranium in the subsurface by forming stable complexes that do not interact with mineral surfaces. Desferrioxamine-B (DFOB) is a ligand of particular interest as it has been shown to form stable complexes with uranium, and increase the solubility of uranium minerals. Oxalic acid forms uranium complexes and is a much simpler ligand. Therefore we will use quantum chemical calculations to gauge the effects of a complex siderophore such as DFOB and simple siderophore such as oxalic acid on the solubility and mobility of uranium in our column experiments.

  • Alise Virbule, Department of Physics: Modelling Optical Absorption Strength in Organic Semiconductors

Organic semiconductors have shown great promise as candidate materials for solar cells, whose efficiency depend on many properties, including the absorption strength within the visible spectrum. Recent studies suggest that the molecular organisation in a polymer film can have a great effect on the absorption strength without changing the material’s chemical composition. Density functional theory and its time-dependent formalism can be used to model the optical properties of oligomers and study their dependence on chain length and conformation. Additionally, these calculations can be used as a starting point to develop and parameterise a coarse-grained model for the optical absorption strength in order to study the effect of conformation on a larger length scale. A better understanding of the macroscopic absorption properties of known compounds can be used to aid the design of new organic materials exhibiting high optical absorption.



Research Data Management community session

Friday September 30th, 13:00 - 14:50, Huxley 342
chair: Henry Rzepa, Dept of Chemistry

Panopto recording


  • Sarah Stewart, Library Services:  Software as Data? Software Management Plans and Software as a Research Output

While funding bodies such as EPSRC emphasize the importance of data, software is also an important research output in its own right, and can be cited and credited for increased research impact. Lack of access to research software is an obstacle to transparency and re-use, both within and outside of academia. But how can software be managed and maintained to ensure reproducibility in research? This short talk will investigate how software can be managed and archived and look at how to write a software management plan to ensure accessibility, dissemination and re-use.

Sarah is part of the Research Data Management Team based in the Central Library. She has a background in biological sciences and information management, and is interested in digital preservation, data sharing and communication, and digital scholarship. 

  • Henry Rzepa, Dept of Chemistry: Chemical Science and Data Repository Design

A case study in molecular sciences will be presented in the form of an interactive demonstration, located with the doi: 10.14469/hpc/1326, shortDOI: bqb7. The learning curve we experienced of using data repositories for 11 years, with well in excess of 100,000 items deposited and assigned DOIs during this period, led us to identify a number of simple fundamental features for the design of a simple yet effective new repository. Features we believe will encourage working scientists to use such tools on a regular and productive basis. There are two core components, the ELN (electronic lab notebook), into which is integrated a simple “publish to a repository” button. This button initiates a workflow that collects core metadata and injects it into a repository against a well defined schema. The metadata is then sent to DataCite in exchange for a DOI. The case study will explore the benefits of such a workflow, illustrated via a newly designed (open-sourced) data repository (doi: 10.17616/R3K64N ) which is starting to be regularly used for the collaborative authoring of journal articles in which the data citations are an exposed component, as required by funding councils to demonstrate effective RDM. Two examples of data preview (LiveView and ProView) will be demonstrated, the latter providing a mechanism for using professional-quality software utilising a temporary license to provide full functionality for that dataset.

Reliable data citations ensure reproducibility of research and credit for data sharing. DataCite exists to ensure reliable citation with the use of persistent identifiers. This session will explore how and why data should be managed with citation in mind. Now that there are over 7 million research outputs identified with DataCite DOIs, we are working with organisations such as CrossRef and ORCID, building tools that use persistent identifiers to put data on the research map. This session will also show how these new tools will allow researchers, institutions and funders to see how individual works impact the research landscape.

Rachael works on research data services and content at the British Library. This includes supporting DataCite UK, working with UK organisations to make their data, software and other research items citable and accessible with the use of DOIs. She is also working on the THOR project, which is using persistent identifiers to create seamless integration between articles, data, and researchers across the research lifecycle.



Research Software Engineering monthly event

Friday September 30th, 10:00 - 12:00, Huxley LT311
chair: Jeremy Cohen, Dept of Computing

Imperial RSE community

This session is the next in the Imperial Research Software Engineering Community’s series of events and this year we are again holding an event as part of the Imperial HPC Summer School. The session will focus on developing research software for HPC platforms and there will be three technical talks followed by a panel discussion.

The session schedule is as follows: 

09:45                       Coffee and pastries available 

10:00                       Session introduction and RSE update

                                (Jeremy Cohen, Department of Computing, Imperial College)

10:15                       Parallel Programming for the 21st Century

                                (Victor Eijkhout, Texas Advanced Computing Centre, University of Texas) 

The dominant parallel programming systems, MPI and OpenMP, are now 20 years old. Computer architectures have become considerably more complicated in this time, and these systems have undergone refinements accordingly, making them ever more complicated to use. Maybe it is time to take a step back and reconsider the nature of parallel programming: is all this complexity necessary at the user level?

Our parallel programming systems have a design that is inspired by underlying hardware mechanisms, which introduces considerations in the parallel program that are extraneous to the algorithm being implemented. This raises the question what the minimal specification is of an algorithm that allows for efficient parallel execution. Past experience has shown that a parallelizing compiler is not the right approach. A more interesting approach, writing a sequential program in terms of distributed objects, was tried in High Performance Fortran and failed there.

We argue that this 'sequential semantics' approach can work, if the programmer expresses the algorithm in terms of the right abstractions. We motivate and define these abstractions and show how the IMP (Integrative Model for Parallelism) system implements them, giving essentially the performance behaviour of a hand-written code. To the programmer, a Finite Element program in IMP has the complexity of a sequential code, without any parallel communication explicitly specified. We show results obtained so far, and future directions of research.


10:55                       Spectral/hp element computation on HPC infrastructure

                                (Chris Cantwell, Department of Aeronautics) 

11:15                        Why do Italians hand gesture? Improving communication in scientific computing

                                (A case study of R in HPC by Anna Freni-Sterrantino, Small Area Health Statistics Unit, Epidemiology and Biostatistics)

11:35                       Panel discussion: The challenges and importance of good research software development practices for HPC

                               Panel members: Simon Burbidge (HPC Service), Victor Eijkhout (TACC), Spencer Sherwin (Aero),

                               David Colling (Physics) and Steve McGough from the University of Durham.



PRISM - Platform for Research in Simulation Methods

Friday September 30th, 13:00 - 14:50, Huxley LT311
chair: Chris Cantwell, Dept of Aeronautics

The PRISM platform

PRISM is an EPSRC Platform for Research in Simulation Methods. The PRISM team are leading experts in developing finite element methods for industrial, environmental and biomedical applications. Our team draws together expertise in designing, analysing and implementing sophisticated finite element methods, deploying these methods in a broad range of industrial, biomedical and environmental applications, and developing software tools that deliver portable parallel performance. The work of the PRISM team is focussed on agile synthesis of modelling techniques: flexibly selecting a combination of discretisation method, polynomial order, mesh, equation assembly algorithm, linear/nonlinear equation solver etc. to meet application-driven problem requirements and to match available hardware. This session will illustrate some of the concepts, technologies and software available as well as highlight some of the challenges we face in pushing these methodologies forward.

Speakers and provisional programme (20 min talks):

  • Spencer Sherwin, Dept of Aeronautics: Outline of PRISM objectives
  • Joaquim Peiro, Dept of Aeronautics: Challenges of mesh generation
  • James Percival, Department of Earth Science and Engineering: Mesh adaptivity for industrial and environmental problems
  • Chris Cantwell, Dept of Aeronautics: Evolving high-order simulations
  • Peter Vincent, Dept of Aeronautics: Challenges of using accelerators



Genomics/Bioinformatics in HPC

Friday September 30th, 10:00 - 12:00, Huxley 342
chair: Sarah Butcher, Head of Bioinformatics Support Service, Dept of Surgery & Cancer

The aim of this session is to bring together researchers at Imperial who are using, or moving towards using high performance computing in a broad bioinformatics context. We hope to use this start to form a community, encouraging networking and leading to transfer of skills and practical knowledge in this broad area.  The session has several speakers, who use the HPC facilities for their research, and we will also introduce the MRC-funded MED-BIO infrastructure for medical bioinformatics.  There will be plenty of time for discussion.


  • Simon O'Hanlon, School of Public Health:  The Out-of-Asia Emergence of Amphibian-Infecting Chytrids
  • Dr James MacDonald, Dept. of Medicine:  Protein engineering for synthetic biology
  • Dr Santosh Atanur, Institute of Translational Medicine and Therapeutics:  Bioinformatics activities at Imperial BRC genomics facility
  • Dr Sarah Butcher/Dr James Abbott, Dept. of Surgery and Cancer:  UK Med-Bio platform for bioinformatics research

The UK MEDical Bioinformatics partnership programme (UK MED-BIO) funded by MRC brings together a group of leading multidisciplinary teams in medical, chemical, metabolic, statistical and computational sciences from across Imperial College London (ICL, lead institution) and its partners. These include the Institute of Cancer Research, the European Molecular Biology Laboratory-European Bioinformatics Institute, the Universities of Oxford, Swansea and Nottingham, and the MRC Clinical Sciences Centre and MRC Human Nutrition Research Centre. The project has invested in a considerable volume of heterogeneous computational infrastructure including HPC (additional cx1 and AX4 nodes) high memory servers and storage. 



HPC community session in Imaging

Friday September 30th, 13:00 - 14:50, Huxley LT308
chair: Lluis Guasch, Dept of Earth Science & Engineering

The aim of the session, the first of it's kind at the summer school, is to bring together research groups across Imperial with a common focus on imaging in a variety of contexts and applications in order to promote communication between them as well as creating an active network that promotes and facilitates efficient interdisciplinary knowledge transfer. The session will have several speakers and a plenty of time for discussion.


  • 13:00 - Lluis Guasch: opening remarks
  • 13:05  - Mike Warner, Dept of Earth Science & Engineering: Imaging the Earth's interior
Full-waveform inversion (FWI) is a computational technique for analysing seismic data that can build high-resolution high-fidelity three-dimensional quantitative models of physical properties in the subsurface. FWI is cast as an optimisation problem where we try to minimise the misfit between observations from real-world experiments and synthetic data predictions; the solution is found using iterative methods that require numerous solutions of a numerical implementation of the wave equation. HPC plays a vital role in applying this technique to realistic 3D datasets due to the large scale of the problem and its suitability to be parallelised simultaneously for both distributed and shared memory architecture.
  • 13:20 - Mengxing Tang, Dept of Bioengineering 
  • 13:35 - Samuel Cooper, Dept of Earth Science and Engineering
Tomographic imaging is increasingly considered to be standard in the analysis porous microstructures; for everything from bone scaffolds to rocks and from catalyst beds to battery electrodes. However, the tools for analysis of this data have not been well standardised or widely distributed. TauFactor is a MatLab application for efficiently calculating the tortuosity factors, as well as volume fractions, surface areas and triple phase boundary densities, of image based microstructural data. The app is easy to use, fast, open source and free, which is hoped to precipitate a greater degree of consistency and rigor in the field of 3D image analysis.
  • 13:50 - Gabrielle Thomas, Dept of Physics: Next-generation laser sources to image the health of our planet
Recent advances in laser sources are rapidly opening up the application base for next-generation imaging solutions. Here we present a novel laser source, known as Alexandrite, which is being developed for high-accuracy satellite-based remote sensing. In this talk I will give a brief introduction to our work, as well as explore the potential of our developments to generate unprecedented data and information about the health of our planet.
  • 14:05 - Peter Huthwaite, Dept of Mechanical Engineering: Quantitative imaging across non-destructive evaluation and medicine, and the links with HPC
Imaging has the power to reconstruct quantitative maps across a range of fields. Within medicine, a map of velocity can distinguish a cancer mass from the surrounding flesh, while a map of pipe wall thickness can indicate whether failure is imminent. This talk will give an overview of the techniques developed to enable these maps to be produced, and discuss how Imperial's HPC systems have been an important enabler to provide test data.
  • 14:20 - General discussion