- Lorentz Center

advertisement
The Future of Multiscale Computing
Peter Coveney
Centre for Computational Science
University College London
Multiscale Modelling and Computing
Outline
1
Multiscale computing: the past and present
2
Existing multiscale computing challenges
3
Multiscale computing: the future
4
Multiscale approaches for the exascale
5
Summary and Acknowledgements
Introduction
• How has multiscale modelling and computing progressed
up to today?
• What challenges in multiscale computing can we expect to
face in the near future?
• How can we meet these challenges?
Types of coupling: how we categorize it
computationally
Multiscale projects are common
Number of multiscale projects by start year
180
EU
NSF
NIH
DOE
160
140
Groen et al.,
accepted by CiSE,
2014,
120
100
arXiV:1208.6444
80
60
40
20
0
20
20
20
20
20
20
20
20
20
20
20
20
19
19
19
19
11
10
09
08
07
06
05
04
03
02
01
00
99
98
97
96
...but the developments differ between
domains
Number of multiscale projects by start year
70
60
biology
engineering
environment
materials
all other
50
40
30
20
10
0
11
20 0
1
20 9
0
20 8
0
20 7
0
20 6
0
20 5
0
20 4
0
20 3
0
20 2
0
20 1
0
20 0
0
20 9
9
19 8
9
19 7
9
19 6
9
19
Multiscale computing: the requirements
• Each submodel in a multiscale simulation has distinct
requirements:
• Some are compute-intensive, some data-intensive, some
communication-intensive.
• Models may require large amounts of memory, or dedicated
architectures (e.g., GPU).
• Submodels must be quickly started, and coupling
communications need to be done efficiently.
• Advance reservation to allow synchronous starting of cyclic
concurrent applications.
• Specialized coupling libraries allow more flexible coupling
and superior wide area communication performance.
Multiscale computing: coupling tools
• Numerous tools have emerged to facilitate coupling and
multiscale computing.
• All of these tools originated from specific science domains
to address targeted problems.
• Over time, many of these tools have widened their scope.
The coupling tool or (F/f)ramework
landscape
Note: tools written in italics feature a GUI, those in bold text
primarily rely on compiled languages (e.g. C, Fortran), those in
normal text on interpreted/scripting languages.
The Virtual Physiological Human
• 207M Euro initiative in EU-FP7
(2007-2013).
• Aims to:
• Enable collaborative
investigation of the human body
across all relevant scales.
• Introduce multiscale
methodologies into medical and
clinical research.
• The VPH framework is:
• Personalized
• Predictive
• Participatory
• Preventive
Organism
Organ
Tissue
Cell
Organelle
Interaction
Protein
Cell Signals
Transcription
Gene
Molecule
The Virtual Physiological Human - HemeLB
• 3D CT or MR angiography data now commonly acquired
for diagnostic purposes.
• Can we use this to personalize models?
• To be useful, everything must be fast. Need to get data to
clinicians on timescale of surgical planning ≤ 1h
Multiscale simulation of nanomaterials
• We investigate mixtures of two different materials to look
for enhanced performance, e.g.:
• Improved fire retardant properties.
• Similar performance to other composites at much lower
filler volumes.
• Improved barrier properties to gases.
• Main ingredients:
• Montmorillonite clay and polymers, such as
Polyethyleen-Glycol (PEG).
• QM, atomistic and coarse grained simulations.
Nanomaterials: scale separation map
Nanomaterials: our computational approach
today
• Our approach relies both on ensemble simulations and
replica-exchange simulations 1 .
• A Pilot Project for EGI/EUDAT/PRACE, in preparation for
production beyond the petascale. 2
1
2
Suter et al., MRS Online Proceedings Library 1470(1), 2012.
https://wiki.egi.eu/wiki/EEP Pilot2 (grid cert required)
Nanomaterials: Preliminary results
• Visualizations of clay sheets on the quantum scale (left),
atomistic scale (middle), and coarse-grained scale (right).
Multiscale computing: key aspects for the
future
• Techniques for validating models and investigating the
error.
• Especially complicated for multi-physics models.
• Reproducibility and verification.
• In several fields: Multiscale simulations with three or more
submodels
• Multiscale computing on exascale systems
Exascale computing
• The emerging exascale computing architecture will not be
simply 1000x today’s petascale architecture.
• All future exascale computer systems designs will have to
address some of the following challenges:
• processor architecture is still unknown,
• system power is the primary constraint for the exascale
system,
• memory bandwidth and capacity are not keeping pace with
the increase in flops,
• clock frequencies are expected to decrease to conserve
power,
• cost of data movement, both in energy consumed and in
performance is not expected to improve,
• the I/O system at all levels will be much harder to manage,
• and reliability and resiliency will be critical.
Introduction - the monolithic road
• A common approach is to construct one code to solve a
particular large system.
• This code is then scaled up in size when deployed on
emerging peta/exascale infrastructures.
• Only a very limited number of codes run computationally
efficiently using a full top-tier resource.
• In addition, simply increasing size/resolution/number of
steps may not always be the best way to uncover new
science!
Monolithic code scaling
• Many scientific codes are limited by communication
overhead (e.g. spectral methods) and can only scale up to
1000s of compute cores.
• To reach exascale, we need to scale up to 106 cores.
• As shown before, an example of well-scaling approaches
are Lattice-Boltzmann methods
• HemeLB - blood flow (>32,000 nodes)
• HYPO4D - turbulent flow (>250,000 nodes)
• LB3D - complex fluid flow(>250,000 nodes)
Introduction - requirements
• Modelling complex systems on exascale resources comes
with a range of requirements.
• These requirements include:
• not only improved parallelism,
• but also in many cases model coupling,
• and new modes of accessing and using e-infrastructures.
Introduction - parallelism
• Increased parallelism has been key to efficiently scaling up
simulations.
• Several proven ways to improve parallel efficiency involve
optimizing:
• communication (localizing it, reducing the number of
synchronization points),
• domain decomposition (ensure optimal calulcation and
communication load balance),
• new levels of parallelization (hybrid parallelization, GPU,
Xeon Phi).
Hybrid parallelisation
• Accelerators such as GPU and Xeon Phi offer very high
computing power but impose strong restrictions on the
code structure
• The code has to be easily vectorised (no branches, no data
dependencies).
• Coalesced and aligned memory access patterns.
• High compute to memory access ratio.
Introduction - resource access
• Multiscale simulations require new ways for resource
access:
• Advance reservation reduces time to completion for
non-concurrent multi-model work flows.
• Advance reservation eliminates a huge waste of compute
cycles for concurrent multi-model simulations.
• Urgent computing for simulations of immediate importance
(e.g., those used in surgical assistance)
Multiscale Approaches for Exascale
Aim to combine models at various scales
A general multi-scale model for engineering illustrating scale and overlap. 3
3
http://www.srcf.ucam.org/~jae1001/ccp5_2007/multiscale_materials-cam.jpg
Challenge: Multiscale modelling spans
established disciplines
Integration frequently occur across established disciplines
Construction example (Bitumen) 4
4
Source: CCP5
Extreme Scaling
• Monolithic approaches may sometimes be
computationally efficient on the exascale, but
have limited scientific relevance.
• Applications may omit crucial phenomena.
• Larger systems tend to require more
integration steps as well, and therefore take
disproportionally longer to complete.
• Extreme scaling applies the coupling of
multiple petascale submodels.
• Extreme scaling allows for modelling
additional phenomena, while constraining the
number of integration steps required.
Heterogeneous Multi-scale Computing
• A modelling approach for problems where the
constitutive equations of a local state in the
macroscale system of interest are not known
in closed form,
• e.g., as a consequence of the sheer
complexity of the processes at the
microscale.
• Here numerical solvers describe domains of
the macroscopic system.
• Missing macro-scale data and behaviour is
provided using a number of instances of
micro-scale models.
Heterogeneous Multi-scale Computing
• HMC has been applied successfully in several scientific
disciplines, such as
• mechanical systems 5 ,
• and suspension flow 6 .
5
6
Calvo et al., SIAM J. on Sci. Comp. 32(4), 2010
E. Lorenz et al., Multiscale Modeling & Sim. 9(4), 2011
Replica Computing
• Combines a large number of terascale and
petascale simulations (also known as
’replicas’) to produce scientifically important
and statistically robust outcomes.
• The replicas are not part of a larger spatial
structure, but are applied to explore a system
under a broad range of conditions.
Replica Computing
• Three different scenarios:
1. Ensemble simulations
2. Dynamic ensemble simulations
3. Replica-exchange simulations
• For example, Replica-exchange is used in MD simulations
to manage particle exchanges between molecular systems
at different temperatures. 7
7
Suter et al., J. of Mat. Chem. 19(17), 2009
Summary
• Challenges to address and marry fundamental scientific
rigour with ease of use and deployment.
• Traditional applications may be able to efficiently run on the
exascale, e.g. by using neighbour-based algorithms and
hybrid parallelization.
• However, many cutting-edge scientific problems cannot be
solved by simply scaling up existing approaches.
• Novel computing patterns help us to tackle these problems
on the exascale.
• e.g., extreme scaling, heterogeneous multiscale modelling
and replica computing.
Acknowledgements
Thanks go out to:
• James Suter, Jacob Swadling, Derek Groen,
Lara Kabalan (nanomaterials)
• Rupert Nash, Miguel Bernabeu, Timm
Krueger, James Hetherington, Hywel Carver,
Jiri Jaros, Derek Groen (bloodflow)
• Luis Fazendeiro, Bruce Boghosian (HYPO4D)
• Stefan Zasada, Ali Haidar, David Chang and
the MAPPER Consortium (software services)
• Derek Groen and Jiri Jaros (preparing this
talk)
Download