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
The Finite Element Method for Problems in PhysicsUniversity of Michigan via Coursera 有限元分析与应用 | Finite Element Method (FEM) Analysis and Applications
Tsinghua University via edX Pratiques du Dimensionnement en Mécanique
Université Paris-Saclay via France Université Numerique High Performance Finite Element Modeling
KTH Royal Institute of Technology via edX High Performance Finite Element Modeling – Part 2
KTH Royal Institute of Technology via edX