Gen X: ExCALIBUR working group on Exascale continuum mechanics through code generation.
Lead Research Organisation:
Imperial College London
Department Name: 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.
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.
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.
Organisations
- Imperial College London (Lead Research Organisation)
- DownUnder GeoSolutions Pty Ltd (Project Partner)
- University of Bath (Project Partner)
- University at Buffalo, State University of New York (Project Partner)
- University College London (Project Partner)
- Durham University (Project Partner)
- Technical University of Munich (Project Partner)
- IBM (United Kingdom) (Project Partner)
- Schlumberger Oilfield UK Plc (Project Partner)
- Hewlett-Packard (United Kingdom) (Project Partner)
- University of Leeds (Project Partner)
Publications
Farrell P
(2021)
A new mixed finite-element method for $H^2$ elliptic problems
Farrell P
(2022)
A new mixed finite-element method for H2 elliptic problems
in Computers & Mathematics with Applications
Farrell P
(2021)
A Reynolds-robust preconditioner for the Scott-Vogelius discretization of the stationary incompressible Navier-Stokes equations
in The SMAI journal of computational mathematics
Brubeck P
(2021)
A scalable and robust vertex-star relaxation for high-order FEM
Brubeck P
(2022)
A Scalable and Robust Vertex-Star Relaxation for High-Order FEM
in SIAM Journal on Scientific Computing
Ellingsrud AJ
(2021)
Accurate numerical simulation of electrodiffusion and water movement in brain tissue.
in Mathematical medicine and biology : a journal of the IMA
Farrell P
(2020)
An Augmented Lagrangian Preconditioner for Implicitly Constituted Non-Newtonian Incompressible Flow
in SIAM Journal on Scientific Computing
Laakmann F
(2022)
An Augmented Lagrangian Preconditioner for the Magnetohydrodynamics Equations at High Reynolds and Coupling Numbers
in SIAM Journal on Scientific Computing
Xia J
(2021)
Augmented Lagrangian preconditioners for the Oseen-Frank model of nematic and cholesteric liquid crystals
in BIT Numerical Mathematics
Van-Brunt A
(2022)
Augmented saddle-point formulation of the steady-state Stefan-Maxwell diffusion problem
in IMA Journal of Numerical Analysis
Boullé N
(2022)
Bifurcation analysis of two-dimensional Rayleigh-Bénard convection using deflation.
in Physical review. E
Williams J
(2020)
Cavity flow characteristics and applications to kidney stone removal
in Journal of Fluid Mechanics
Betteridge J
(2021)
Code Generation for Productive, Portable, and Scalable Finite Element Simulation in Firedrake
in Computing in Science & Engineering
Van-Brunt A
(2022)
Consolidated theory of fluid thermodiffusion
in AIChE Journal
Van-Brunt A
(2021)
Consolidated theory of fluid thermodiffusion
Boullé N
(2022)
CONTROL OF BIFURCATION STRUCTURES USING SHAPE OPTIMIZATION
Boullé N
(2022)
Control of Bifurcation Structures using Shape Optimization
in SIAM Journal on Scientific Computing
Boullé N
(2021)
Control of bifurcation structures using shape optimization
Boullé N
(2020)
Deflation-based identification of nonlinear excitations of the three-dimensional Gross-Pitaevskii equation
in Physical Review A
Farrell P
(2021)
Irksome: Automating Runge-Kutta Time-stepping for Finite Element Methods
in ACM Transactions on Mathematical Software
Farrell P
(2021)
Mixed Kirchhoff stress-displacement-pressure formulations for incompressible hyperelasticity
in Computer Methods in Applied Mechanics and Engineering
Brubeck P
(2024)
Multigrid Solvers for the de Rham Complex with Optimal Complexity in Polynomial Degree
in SIAM Journal on Scientific Computing
De Diego G
(2022)
Numerical approximation of viscous contact problems applied to glacial sliding
in Journal of Fluid Mechanics
De Diego G
(2023)
On the Finite Element Approximation of a Semicoercive Stokes Variational Inequality Arising in Glaciology
in SIAM Journal on Numerical Analysis
Dalby J
(2022)
One-Dimensional Ferronematics in a Channel: Order Reconstruction, Bifurcations, and Multistability
in SIAM Journal on Applied Mathematics
Farrell P
(2021)
PCPATCH Software for the Topological Construction of Multigrid Relaxation Methods
in ACM Transactions on Mathematical Software
Tuma K
(2021)
Phase-field modeling of multivariant martensitic transformation at finite-strain: Computational aspects and large-scale finite-element simulations
in Computer Methods in Applied Mechanics and Engineering
Farrell P
(2022)
Robust multigrid methods for nearly incompressible elasticity using macro elements
in IMA Journal of Numerical Analysis
Cueto C
(2022)
Stride: A flexible software platform for high-performance ultrasound computed tomography.
in Computer methods and programs in biomedicine
Xia J
(2021)
Structural Landscapes in Geometrically Frustrated Smectics.
in Physical review letters
Laakmann F
(2023)
Structure-preserving and helicity-conserving finite element approximations and preconditioning for the Hall MHD equations
in Journal of Computational Physics
Description | When adapting computer simulations of continuous processes such as fluid flow to new supercomputers, it is necessary to change not just the implementation of the algorithms used but to change to new algorithms in order to make best use of the new hardware. This means that it is insufficient that simulation code is fast, it must also be easy to change the algorithms employed, otherwise the performance gained may well be lost on the next supercomputer. |
Exploitation Route | Future development of simulation technology across science and engineering should employ high-level interfaces that enable scientists and engineers to adapt algorithms to the available hardware at minimal cost. |
Sectors | Aerospace Defence and Marine Construction Energy Environment Manufacturing including Industrial Biotechology |
Description | The Firedrake developments undertaken in this award have been taken up by two public sector research establishments: the Met Office and the United Kingdom Atomic Energy Authority. In each case, Firedrake is being used for rapid prototyping of high performance, numerically sophisticated simulation tools. Firedrake offers scientists at the agencies a level of productivity and flexibility that is not possible with the tools those agencies currently employ. |
First Year Of Impact | 2022 |
Sector | Energy,Environment |
Impact Types | Policy & public services |
Description | SysGenX: Composable software generation for system-level simulation at Exascale |
Amount | £813,413 (GBP) |
Funding ID | EP/W026066/1 |
Organisation | Engineering and Physical Sciences Research Council (EPSRC) |
Sector | Public |
Country | United Kingdom |
Start | 12/2021 |
End | 11/2025 |
Title | Firedrake |
Description | Firedrake is an automated system for the portable solution of partial differential equations using the finite element method (FEM). Firedrake enables users to employ a wide range of discretisations to an infinite variety of PDEs and employ either conventional CPUs or GPUs to obtain the solution. |
Type Of Technology | Software |
Year Produced | 2013 |
Open Source License? | Yes |
Impact | Firedrake is a principle test platform for the development of Gung Ho, the future UK Met Office dynamical core. |
URL | http://www.firedrakeproject.org/ |