FEniCSx: Design of the Next Generation FEniCS Libraries for Finite Element Methods
Offered By: Inside Livermore Lab via YouTube
Course Description
Overview
Explore the design and capabilities of FEniCSx, the next generation of FEniCS libraries for finite element methods, in this seminar presented by Garth Wells from the University of Cambridge. Delve into the evolution of the FEniCS Project, examining how it addresses limitations in performance, extensibility, and maintainability while retaining its strengths in providing high-level representations for solving partial differential equations. Discover the new design features that enable the creation of flexible, fast solvers in both C++ and Python. Gain insights into high-performance finite element kernels, including double, single, and half-precision implementations, and learn about a cache-aware performance model that accurately predicts performance across architectures. Understand the challenges and solutions in developing efficient exascale discretizations, and explore the implications for future finite element method applications.
Syllabus
Introduction
Quiz
UFL
Directed Graph
Code Generation
Dolphin
Legacy Phoenix
Performance
Prerequisites
Background
Tools
PhoenixX
PhoenixX Overview
Extensibility
Philosophy
Functions Operating on Data
No Classes Involved
Geometric Operations
Summary
Partitioners
Mixed Formulations
Assembly Curve
Distributed Parallel Mesh
Kernel Code
Basics
Performance Summary
Performance Models
Memory Bandwidth
Questions
Taught by
Inside Livermore Lab
Related Courses
High Performance ComputingGeorgia Institute of Technology via Udacity Введение в параллельное программирование с использованием OpenMP и MPI
Tomsk State University via Coursera High Performance Computing in the Cloud
Dublin City University via FutureLearn Production Machine Learning Systems
Google Cloud via Coursera LAFF-On Programming for High Performance
The University of Texas at Austin via edX