jorgensd / adios4dolfinx

Extending DOLFINx with checkpointing functionality
http://jsdokken.com/adios4dolfinx/
MIT License
20 stars 7 forks source link

Performance improvements + remove numba as dependency #51

Closed jorgensd closed 9 months ago

jorgensd commented 9 months ago
jorgensd commented 9 months ago

@francesco-ballarin this PR should give an insane speedup to any checkpointing. The tests goes from 3 minutes to 36 seconds on CI (with a few new tests introduced). Running a problem locally (with a 30x30x30 unit cube), timing components of read_function

This branch (serial):

Write mesh and function 8.99e-01
Read mesh 9.13e-01
Read function 2.05e+00

Main (serial):

Write mesh and function 2.38e+01
Read mesh 9.29e-01
Read function 8.53e+01

This branch (2 processes)

Write mesh and function 7.95e-01
Read mesh 6.51e-01
Read function 1.55e+00

Main (2 processes)

Write mesh and function 1.34e+01
Read mesh 7.07e-01
Read function 4.84e+01