Devito-4.1
GPUs
- Support for more Operators -- isotropic acoustic, TTI, elastic, viscoelastic, ...
- Support for reductions
- Fixed several bugs concerning code generation
DSL
- Fixed minor bugs related to derivatives and finite-differences
MPI
- Fixed several bugs arising in presence of SubDomains and/or SubDimensions
- Fixed code generation in full mode (compute-communication overlap), when the same symbol (e.g.
comm
) was appearing twice in the signature of elemental functions
Documentation
- Updated user API
- Additional tutorials in the form of Jupyter notebooks (SymPy, DSL, SubDomains)
Benchmarking
- A new mode exploiting the JIT_BACKDOOR mechanism was added
- DevitoBench package merged into Devito
CI/CD:
- Dropped Azure Pipelines and Travis; testing infrastructure moved to GitHub Actions
- Added GPU testing
- Added testing for osx
- Auto-deployment on Pypi upon release
Compiler:
- Improved architecture auto-detection
- Refactored DLE as a sequence of "standard" compilation passes
- Moved data dependence analysis to the Cluster level
- Fixed data dependence analysis in some corner cases arising with SubDomains and/or SubDimensions
- Moved interpolation to separate sub-package
- Integrated profiling for the compilation pipeline
Many thanks to all the contributors to this release (last surname alphabetical order):
- Tarek Allam (The Alan Turing Institute)
- George Bisbas (Imperial College London)
- Maelso Bruno (Federal University of Paraíba)
- Tim Burgess (DownUnder Geosolutions)
- Gerard Gorman (Imperial College London)
- Navjot Kukreja (Imperial College London)
- Mathias Louboutin (Georgia Institute of Technology)
- Fabio Luporini (Devito Codes)
- Rhodri Nelson (Imperial College London)
- BlockSprintZIf (Independent)