computational geosciences at uni. oxford …...seismology oceanography computational geosciences at...
TRANSCRIPT
http
s://w
ww.
st-a
ndre
ws.
ac.u
k/~d
ib2/
GE1
001/
ocea
ns.h
tml
http
s://w
ww.
geop
hysi
k.un
i-mue
nche
n.de
/rese
arch
/sei
smol
ogy
Geodynamics
Seismology
Oceanography
Computational Geosciences at Uni. Oxford Dave A May Department of Earth Sciences [email protected]
Cambridge Scientific Computation Day, March 20, 2017
Computational geoscience: An example
Domain ~ O(109) km3
• 20M year time scale (5000 time steps)
• O(108) DOFs
• 8k cores
Figure from: https://www.studyblue.com/notes/note/n/test-1/deck/3631502
Geodynamics: Addresses fundamental questions related to the origin and evolution of the planetary interiors, e.g.
why does Earth have tectonics? how does topography encode the deformation history?
Cambridge Scientific Computation Day, March 20, 2017
Computational geoscience: An example
Domain ~ O(109) km3
• 20M year time scale (5000 time steps)
• O(108) DOFs
• 8k cores Rudi et al, “An Extreme-Scale Implicit Solver for Complex PDEs: Highly Heterogeneous Flow in Earth’s Mantle”, SC’15
⌦
Figure from: https://www.studyblue.com/notes/note/n/test-1/deck/3631502
Global scale models • highly viscous flow + conservation of energy• non-linear viscosity• domain: entire mantle O(1012) km3• 1B year time scale (106 time steps)• O(1013) DOFs• 1.5M cores —> 12 hrs per Newton solve per
time step• Gordon Bell winner 2015
Geodynamics: Addresses fundamental questions related to the origin and evolution of the planetary interiors, e.g.
why does Earth have tectonics? how does topography encode the deformation history?
Cambridge Scientific Computation Day, March 20, 2017
Computational geoscience: An example
Domain ~ O(109) km3
• 20M year time scale (5000 time steps)
• O(108) DOFs
• 8k cores
May et al, “pTatin3d: High-performance Methods for Long-Term Lithospheric Dynamics”, SC’14
⌦
Figure from: https://www.studyblue.com/notes/note/n/test-1/deck/3631502
Regional scale models • multiple materials, topography, large
deformation• Drucker-Prager plasticity• domain: O(109) km3• 20M year time scale (104 time steps)• O(108) DOFs• 8k cores —> 20 hrs per simulation
Global scale models • highly viscous flow + conservation of energy• non-linear viscosity• domain: entire mantle O(1012) km3• 1B year time scale (106 time steps)• O(1013) DOFs• 1.5M cores —> 12 hrs per Newton solve per
time step• Gordon Bell winner 2015
Geodynamics: Addresses fundamental questions related to the origin and evolution of the planetary interiors, e.g.
why does Earth have tectonics? how does topography encode the deformation history?
Cambridge Scientific Computation Day, March 20, 2017
Oxford Earth science dept. dichotomy
Experimental based research groups• geochemistry; petrology; planetary materials; rheology• 17 faculty members• 4 labs (cosmotope; exp. petrology; noble lab; rock rheology) • 5 full-time technicians • 4 full-time lab managers
Computation based research groups• geodynamics; geodesy; seismology; oceanography• 7 faculty members• 0 in-house computational labs • 0 CS&E research staff (part-time or full-time)
Cambridge Scientific Computation Day, March 20, 2017
Oxford Earth science dept. dichotomy
Experimental based research groups• geochemistry; petrology; planetary materials; rheology• 17 faculty members• 4 labs (cosmotope; exp. petrology; noble lab; rock rheology) • 5 full-time technicians • 4 full-time lab managers
Computation based research groups• geodynamics; geodesy; seismology; oceanography• 7 faculty members• 0 in-house computational labs • 0 CS&E research staff (part-time or full-time)
Cambridge Scientific Computation Day, March 20, 2017
Typical software cycle
Typical E.-Sci. PhD (or post-doc) commences with little training in computational math, programming, numerics and software development
They proceed to develop a “hero” code
• progress is slow and painful due to limited experience developing software
• single author, single user
• solves a specific problem (their research topic) … however …
- no documentation (usually);
- no capacity for reproducible tests (maybe no tests);
- not portable;
- non extensible (probably);
- upon graduation / departure, support for that code is reduced, or completely halted;
Cambridge Scientific Computation Day, March 20, 2017
Typical software cycle
Typical E.-Sci. PhD (or post-doc) commences with little training in computational math, programming, numerics and software development
They proceed to develop a “hero” code
• progress is slow and painful due to limited experience developing software
• single author, single user
• solves a specific problem (their research topic) … however …
- no documentation (usually);
- no capacity for reproducible tests (maybe no tests);
- not portable;
- non extensible (probably);
- upon graduation / departure, support for that code is reduced, or completely halted;
Cambridge Scientific Computation Day, March 20, 2017
Typical software cycle
Consequences • Extension of the software to address new research questions are
difficult
(i) a follow-up student loses time trying to make the inherited hero code solve their new problem;
(ii) they give up, and write their own tool — another hero code is born;
(iii) they graduate, the pattern repeats;
Research groups periodically lose in-house modelling expertise and modelling capabilities
Continuity of research themes is often difficult / impossible
Community codes partially resolve this dilemma, however (i) expertise is not in-house; (ii) a community code does not exist for all fields in geoscience
Cambridge Scientific Computation Day, March 20, 2017
Realities
Developing code / software to obtain solutions to complex problems is different today, cf. 20 years ago
➡ The concept of open source software has been established➡ Good open source libraries are in abundance➡ Leveraging existing packages leads to rapid development, more time doing
science, less time re-inventing the wheel➡ Developing, enhancing, distributing high quality computational software is a
specialist task beyond what can be expected of a geophysics faculty member ➡ The days of the hero code are over
Computation forms a crucial and complementary component of many geoscience domains
Departmental perspectives need to be changed to support cutting-edge computational geoscience research The dichotomy needs to be eradicated … but how?
Cambridge Scientific Computation Day, March 20, 2017
SRF in computational geosciences
Generate departmental support to create a CS&E position
Convince the HoD of the realities
Job description • contract type: on-going• non-faculty position (departmental hire, no college affiliation)• ability to support groups with alg. dev., software dev., HPC, pump priming• ability to support management of groups specific computing requirements• ability to obtain external funds through own grants, or by boot-strapping onto
dept. grants• must conduct independent research• must be REF-able• no explicit teaching commitments
Convince the university to open the position
Cambridge Scientific Computation Day, March 20, 2017
SRF services
Lead the development of new research software driven by application science using modern numerical methods, modern software practices and leveraging existing libraries*
Development of efficient PDE solvers
HPC expertise
Advice concerning suitable discretisations for a given PDE
Advice concerning best practices for software design, software development and software management and maintenance
Code reviews and assistance with re-designing, re-factoring and support for re-writing existing in-house software
On-demand training related to any aspects of CS&E
Cambridge Scientific Computation Day, March 20, 2017
Primary objectives
Knowledge transferal concerning best practices in software design and software development, starting with:
• Push (forcefully) groups to use version control software
• Consolidate all new and existing group software into GitHub or BitBucket
• Push groups to adopt continuous integration*
Development and distribution of shared (open-source), re-usable in-house software tools for computational geoscience research
Open new frontiers of scientific research to department members (and the broader geoscience community). Enable computations that were assumed, or deemed to be, algorithmically or computationally intractable
Cambridge Scientific Computation Day, March 20, 2017
On-going projects
Geodynamics
• Software realisation of efficient algorithms, discretizatons, and solvers for two-phase flow in geodynamic scenarios
Seismology
• Spectral FE for wave propagation on tetrahedral meshes
• Hybrid methods coupling local and global methods
Oceanography
• Forward model agnostic Lagrangian analysis tools