Gen X: ExCALIBUR working group on Exascale continuum mechanics through code generation.

Lead Research Organisation: Imperial College London
Department Name: Dept of Mathematics

Abstract

Continuous physical processes pervade every aspect of our society,
industry and the natural world. From the flow of air over an aircraft
to the propagation of mobile phone signals, to the behaviour of
chemical components at every point of the manufacturing processes,
continuum mechanics is at the heart of our industrial processes. In
medicine, the electrical behaviour of the heart and brain, the flow of
blood and other fluids through the body, and the detection of disorders
using all manner of scanners and detectors are all continuum mechanics
processes. In the natural world, detecting and understanding the
movement and composition of the Earth enable us to understand
earthquakes and to hunt for valuable minerals, while advanced
understanding of the complex interaction of fluids and electromagnetic
fields allows us to understand stars, the cosmos and our place in it.

In all of these cases and many more beside, the mathematical equations
describing phenomena are known, but solutions very rarely
exist. Science and engineering are essentially dependent on computer
simulation to understand any of these systems, and to design the
devices and processes which use them. Many of these phenomena are so
complex or have such a range of spatial scales that existing petascale
computer systems are a limit on scientific advance. In addition, there
is a need to go beyond mere simulation to simulate the uncertainty in
processes, find the optimal solution, or discover the multiple
possible outcomes of a system. The advent of exascale computing
presents the opportunity to address these limitations. However,
increasing computational scale, increasingly complex simulation
algorithms, and the vast quantities of data produced by exascale
computing will defeat not just existing simulation software, but also
existing ways of writing simulation software.

Gen X is a project to establish the requirements for exascale
simulation software for continuum mechanics, and to provide a concrete
way of achieving this capability within the next five years. The Gen X
approach is to move beyond just writing code to a system of specialist
simulation languages which enable scientists and engineers to specify
the problem they want to solve and the algorithms they want by writing
mathematics, the language of science. The actual code will be
automatically generated by specialist compilers rather than
hand-written. Rather than an algorithm developer writing a paper about
their new development and hoping that simulation scientists will find
the time to code it up for their specific problem, the algorithm will
be encoded in a domain specific language and implemented in its
compiler. The simulation scientist will then be able to access the
algorithm directly without recoding.

At exascale, writing all the simulation outputs to disk for later
analysis is impossible. Instead, simulation data must be processed,
analysed and visualised as the simulation is conducted, and only the
results stored for later use. Gen X will provide mathematical
languages for this process which will enable the scientist or engineer
to concisely specify the analysis to be performed, and to have
confidence that the resulting calculations will be both efficient and
correct.

By enabling scientists and engineers to work at a higher mathematical
level while also accessing more sophisticated algorithms and
hardware-specific implementations than previously possible, Gen X will
make simulation science both more capable and more productive. In this
manner, Gen X is essential to realising the potential of exascale
computing while also making the most efficient use of research
resources.

Planned Impact

The direct and indirect users of continuum mechanics simulation
include huge areas of industry and the wider society. Increased
simulation capability, especially when coupled with outer loop
processes such as uncertainty quantification and automated design
optimisation will enable the design of more efficient machines and
industrial processes, better mobile communication networks with fewer
blackspots, more sensitive medical scanning, and will provide a basis
for understanding hard to observe processes such as those far beneath
the Earth's surface or far out in space. Importantly, increased
capabilities in uncertainty quantification and discovery of multiple
solutions are essential if simulations are to be relied on in
sensitive or safety-critical applications where understanding the
error margins of a process is critical.

The direct impact of Gen X will be to enable the creation of more
sophisticated and more capable continuum mechanics software at lower
cost than is currently possible. This will enable more simulation of
the phenomena of social, medical or industrial importance, and will
enable simulation practitioners to move to new challenges or adopt new
techniques in a more nimble manner. Moving to a world in which
pervasive simulation allows new designs or ideas to be tested without
expensive prototypes or fieldwork depends on the sort of productivity
shift that Gen X offers.

The Gen X project will also benefit existing simulation users by
raising awareness of existing cutting edge capabilities. By engaging
in a sustained community engagement program throughout ExCALIBUR phase
1, more simulation scientists and engineers will become aware of the
high productivity, highly flexible systems which have emerged over
recent years and which are already capable of petascale simulations of
exceptionally complex physical systems. As we move the cutting edge
towards the exascale, Gen X will also ensure that more and more
scientists and engineers have access to the most current capabilities
for their simulaton needs, at any scale.

Publications

10 25 50