Code generation for productive, portable, and scalable finite element simulation in Firedrake
Creating scalable, high performance PDE-based simulations requires an appropriate combination of models, discretizations, and solvers. The required combination changes with the application and with the available hardware, yet software development time is a severely limited resource for most scientis...
Main Authors: | , , |
---|---|
Format: | Journal article |
Language: | English |
Published: |
IEEE
2021
|
Summary: | Creating scalable, high performance PDE-based simulations requires an appropriate combination of models,
discretizations, and solvers. The required combination changes with the application and with the available hardware, yet software
development time is a severely limited resource for most scientists and engineers. Here we demonstrate that generating simulation
code from a high-level Python interface provides an effective mechanism for creating high performance simulations from very few lines
of user code. We demonstrate that moving from one supercomputer to another can require significant algorithmic changes to achieve
scalable performance, but that the code generation approach enables these algorithmic changes to be achieved with minimal
development effort.
|
---|