Academy of Mathematics and Systems Science, CAS Colloquia & Seminars | Speaker: | Mikael Mortensen 教授,挪威奥斯陆大学 | Inviter: | | Title: | Shenfun and high performance computing with Python | Time & Venue: | 2021.12.15 16:00-18:00 腾讯会议: 765-387-043 | Abstract: | In this talk Prof Mikael Mortensen will focus on his open source code `Shenfun`. `Shenfun` is a Python-based high performance computing platform for solving partial differential equations (PDEs) by the spectral Galerkin method. The user interface to Shenfun is very similar to FEniCS (www.fenicsproject.org), but applications are limited to multidimensional tensor product grids, using either Cartesian or curvilinear grids (e.g., but not limited to, polar, cylindrical, spherical or parabolic). The code is parallelized with MPI through the mpi4py-fft package. Shenfun enables fast development of efficient and accurate PDE solvers (spectral order and accuracy), in the comfortable high-level Python language. The spectral accuracy is ensured by using high-order global orthogonal basis functions (Fourier, Legendre, Chebyshev, Laguerre, Hermite and Jacobi), as opposed to finite element codes that are using low-order local basis functions. Efficiency is ensured through vectorization (Numpy), parallelization (mpi4py) and by moving critical routines to Cython or Numba. Shenfun has been used to run turbulence simulations (Direct Numerical Simulations) on thousands of processors on high-performance supercomputers, see the spectralDNS repository. The first part of the talk will be about using MPI for Python in general, and a little bit about the spectralDNS project (https://github.com/spectralDNS). In spectralDNS, there are highly optimized Navier-Stokes (and similar) solvers for Direct Numerical Simulations of turbulent flows, and the solvers have run on supercomputers with up to 65,000 cores. | | | |