Top Banner
| 1/29 Selecng a Finite Element Analysis Backend for Exascale Fusion Reactor Simulaons
29

Selecting a Finite Element Analysis Backend for Exascale ...€¦ · Solve a large linear system for all the physics involved Ensures capture of strongly coupled physical phenomena

Aug 08, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Selecting a Finite Element Analysis Backend for Exascale ...€¦ · Solve a large linear system for all the physics involved Ensures capture of strongly coupled physical phenomena

| 1/29

Selecting a Finite Element Analysis Backendfor Exascale Fusion Reactor Simulations

Page 2: Selecting a Finite Element Analysis Backend for Exascale ...€¦ · Solve a large linear system for all the physics involved Ensures capture of strongly coupled physical phenomena

| 2/29

A Brief Introduction to FusionProducing Energy with Magnetically Confined Plasma

Page 3: Selecting a Finite Element Analysis Backend for Exascale ...€¦ · Solve a large linear system for all the physics involved Ensures capture of strongly coupled physical phenomena

| 3/29

The Physics Behind Fusion

n + 14,1 МеВn + 14.1 MeV

He + 3,5 МеВHe + 3.5 MeV44

HH33HH22

Page 4: Selecting a Finite Element Analysis Backend for Exascale ...€¦ · Solve a large linear system for all the physics involved Ensures capture of strongly coupled physical phenomena

| 4/29

Magnetic Confinement - The Tokamak

Image Copyright © S. Li, H. Jiang, Z. Ren, C. Xu, 2014 CC-BY-4.0

Page 5: Selecting a Finite Element Analysis Backend for Exascale ...€¦ · Solve a large linear system for all the physics involved Ensures capture of strongly coupled physical phenomena

| 5/29

ITER

  

Image Copyright © Oak Ridge National Laboratory, 2016 CC-BY-2.0

Page 6: Selecting a Finite Element Analysis Backend for Exascale ...€¦ · Solve a large linear system for all the physics involved Ensures capture of strongly coupled physical phenomena

| 6/29

Engineering Analysis Challenges

    

Page 7: Selecting a Finite Element Analysis Backend for Exascale ...€¦ · Solve a large linear system for all the physics involved Ensures capture of strongly coupled physical phenomena

| 7/29

Two Approaches

Single tightly coupled simulation

● One single program

● Solve a large linear system for all the physics involved

● Ensures capture of strongly coupled physical phenomena

● Solution may be numerically ‘stiff’

Many loosely coupled simulations

● Use best in class for each domain

● Couple together with a third party library and iterate

● Temporal accuracy may suffer

● Easy to decouple irrelevant physics

Page 8: Selecting a Finite Element Analysis Backend for Exascale ...€¦ · Solve a large linear system for all the physics involved Ensures capture of strongly coupled physical phenomena

| 8/29

Selecting a Finite Element Library

Page 9: Selecting a Finite Element Analysis Backend for Exascale ...€¦ · Solve a large linear system for all the physics involved Ensures capture of strongly coupled physical phenomena

| 9/29

Criterion One – Parallel First

Exascale simulation

Designed as a parallel code from the outset

Optimised for HPC environment

Page 10: Selecting a Finite Element Analysis Backend for Exascale ...€¦ · Solve a large linear system for all the physics involved Ensures capture of strongly coupled physical phenomena

| 10/29

Criterion Two – Permissively Licensed

Any location, including w/o internet

Any number of processes

Extension and modification permitted

Open Source?

Page 11: Selecting a Finite Element Analysis Backend for Exascale ...€¦ · Solve a large linear system for all the physics involved Ensures capture of strongly coupled physical phenomena

| 11/29

Criterion Three - Portable

What does the exascale look like?

Vectorised? Mixed-mode? GPU?

Page 12: Selecting a Finite Element Analysis Backend for Exascale ...€¦ · Solve a large linear system for all the physics involved Ensures capture of strongly coupled physical phenomena

| 12/29

Criterion Four - Extensible

Open to external contribution

Good software engineering practices

Page 13: Selecting a Finite Element Analysis Backend for Exascale ...€¦ · Solve a large linear system for all the physics involved Ensures capture of strongly coupled physical phenomena

| 13/29

Criterion Five - Supported

User community – forums, mailing lists, IRC, workshops and tutorials

Documentation – for both user and developer

Page 14: Selecting a Finite Element Analysis Backend for Exascale ...€¦ · Solve a large linear system for all the physics involved Ensures capture of strongly coupled physical phenomena

| 14/29

Implicit Criterion – Compiled Language

Interpreted languages incur an overhead

Example: FEniCS versus DOLFIN

When scaled up, every little helps

Page 15: Selecting a Finite Element Analysis Backend for Exascale ...€¦ · Solve a large linear system for all the physics involved Ensures capture of strongly coupled physical phenomena

| 15/29

Implicit Criteria – Stable API, Actively Developed

A reliable library must have a stable API,thus not in ‘alpha’ or ‘beta’ development

To be actively supported,it must actively developed

Page 16: Selecting a Finite Element Analysis Backend for Exascale ...€¦ · Solve a large linear system for all the physics involved Ensures capture of strongly coupled physical phenomena

| 16/29

Initial survey found 35 potential candidates

Eliminated those that were:Not parallel-first / HPCIn early development

Poorly supportedInextensibleAbandoned

Initial Survey and Elimination

Page 17: Selecting a Finite Element Analysis Backend for Exascale ...€¦ · Solve a large linear system for all the physics involved Ensures capture of strongly coupled physical phenomena

| 17/29

Shortlist

● deal.ii www.dealii.org ● DUNE www.dune-project.org● DOLFIN fenicsproject.org● libMesh libmesh.github.io● MFEM mfem.org● MOOSE mooseframework.org● Nektar++ www.nektar.info

Page 18: Selecting a Finite Element Analysis Backend for Exascale ...€¦ · Solve a large linear system for all the physics involved Ensures capture of strongly coupled physical phenomena

| 18/29

Performance Measurement – Problem Definition

● Steady State: Poisson Equation ● Time Dependent: Heat Equation

−∇2u=f

∂u∂ t

−∇2u=f

Page 19: Selecting a Finite Element Analysis Backend for Exascale ...€¦ · Solve a large linear system for all the physics involved Ensures capture of strongly coupled physical phenomena

| 19/29

Performance Measurement – Mesh Definition

http://gmsh.info

Page 20: Selecting a Finite Element Analysis Backend for Exascale ...€¦ · Solve a large linear system for all the physics involved Ensures capture of strongly coupled physical phenomena

| 20/29

Dealbreaker

Page 21: Selecting a Finite Element Analysis Backend for Exascale ...€¦ · Solve a large linear system for all the physics involved Ensures capture of strongly coupled physical phenomena

| 21/29

Results – Memory Usage

Page 22: Selecting a Finite Element Analysis Backend for Exascale ...€¦ · Solve a large linear system for all the physics involved Ensures capture of strongly coupled physical phenomena

| 22/29

Results – Scaling (Total Time)

Page 23: Selecting a Finite Element Analysis Backend for Exascale ...€¦ · Solve a large linear system for all the physics involved Ensures capture of strongly coupled physical phenomena

| 23/29

Results – Scaling (Solver Time)

Page 24: Selecting a Finite Element Analysis Backend for Exascale ...€¦ · Solve a large linear system for all the physics involved Ensures capture of strongly coupled physical phenomena

| 24/29

Results – Wall Time

Page 25: Selecting a Finite Element Analysis Backend for Exascale ...€¦ · Solve a large linear system for all the physics involved Ensures capture of strongly coupled physical phenomena

| 25/29

Results – Honourable Mentions

MFEM – Highly portable, few dependencies,clear and simple build process

MOOSE – Multiphysics coupling design

Page 26: Selecting a Finite Element Analysis Backend for Exascale ...€¦ · Solve a large linear system for all the physics involved Ensures capture of strongly coupled physical phenomena

| 26/29

Conclusions

All things considered, there is no clear winner

Page 27: Selecting a Finite Element Analysis Backend for Exascale ...€¦ · Solve a large linear system for all the physics involved Ensures capture of strongly coupled physical phenomena

| 27/29

Picking A Winner

s final=w p r p+wq rq

w=weight , r=rank , x p=performance , xq=quality

sq=wi si+wu su+wd sd

s=score , x i=installation , xu=usability , xd=documentation

Page 28: Selecting a Finite Element Analysis Backend for Exascale ...€¦ · Solve a large linear system for all the physics involved Ensures capture of strongly coupled physical phenomena

| 28/29

Summary – Important Aspects of HPC Software

● In HPC, performance and scalability are essential● A well documented, easy to use and portable build

process● User interaction is still important, consider how data will

go in and out - support common, open formats● Good documentation:

– Tutorials– Examples– Source Comments

Page 29: Selecting a Finite Element Analysis Backend for Exascale ...€¦ · Solve a large linear system for all the physics involved Ensures capture of strongly coupled physical phenomena

| 29/29

Thank You For Listening

Any Questions?