Research

Context



Scientific simulations are a prominent means for academic and industrial
research and development efforts nowadays, especially for the study of
complex physical phenomenons such as fluid dynamics, for modeling blood
flow in human beings, liquid or gases flows around objects, or Earth
wave propagation in geoscience, for instance. Such simulations are
extremely compute intensive due to the discretization process involved
in expressing such physical phenomenon models in a computer-enabled
form. This process is critical: Exploiting supercomputer hardware
resources to their full extent is essential to compute the highest
quality simulations in the shortest possible time. Yet, this process is
difficult: Modern high performance computing (HPC) supercomputers
feature highly complex, heterogeneous, dynamic architectures, often
equipped with specialized circuitry such as accelerator devices.

FEniCS


The FEniCS computing platform, of which SIMULA is the major
contributor, is a popular open-source (LGPLv3) computing platform for
solving partial differential equations. It is developed within the
context of an international consortium also involving Chalmers Univ.,
Charles Univ., the Univ. of Cambridge and Univ. du Luxembourg. Developed
over two decades, it is supported and used in a thriving community for a
broad range of scientific simulation purposes, including biomedical,
life science, fluid dynamics, and geophysics.

FEniCS enables users to quickly translate scientific models into
efficient finite element code. It provides scientific application
programmers with a high-level Python and C++ front-end programming model
that lets them express simulations in a formalism close to their
mathematical expression. It allows them to focus on matters relevant to
the problem being modeled, while abstracting away most computer-related
technical details in its back-end.

Team STORM Methodologies and Tools for HPC


Inria’s Team STORM develops methodologies and tools to
statically and dynamically optimize computations on HPC architectures},
ranging from task-based parallel runtime systems to vector processing
techniques, from performance-oriented scheduling to energy consumption
reduction. STORM‘s StarPU runtime system} brings task
parallelism programming to heterogeneous, accelerated computing
platforms. STORM‘s MIPP C++ wrapper library offers a means to
program high performance vectorized numerical kernels on top of modern
single-instruction multiple-data (SIMD) instruction sets while providing
programmers with a unique combination of abstraction and control.

Comments are closed.