Devito

Latest version: v4.8.11

Safety actively analyzes 706267 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 6 of 7

3.2beta

* Improved organisation of the Intermediate Representation classes (``ir`` submodules)
* Moved Clusterization to IR from DSE
* Better type hierarchy (reuse code from superclasses, ``SparseFunction`` -> [``SparseFunction``, ``SparseTimeFunction``], ...)
* Better ``Dimension`` hierarchy, now wired into the main type hierarchy
* Drop "Global reverse flag" hack
* Drop "Global modulo flag" hack
* Revisited argument processing for ``Operator.apply``
* Devito now explicitly provides its own ``Eq`` and ``solve`` modules
* Initial support for sub-domains
* Update the YASK backend, towards feature completeness
* Lots of changes in preparation for the domain-allocation switch

3.1.0

This release includes several new pieces of functionality and some significant API changes:
* Updated to Python-3 (exclusively) and SymPy-1.1
* Renamed symbol types: `DenseData`->`Function`, `TimeData`->`TimeFunction`, `PointData`->`SparseFunction`
* Introduction of a `Grid` class that provides the defaulting behaviour for space and time dimensions
* Enable completely generic operators without explicit substitution of spacing variables
* Addition of explicit start/end values for dimension iterations for operator invocation
* Removed fixed dimensions with hard-coded loop bounds
* Improvements to YASK backend resulting in functional acoustic operators (both forward and adjoint)
* Addition of new seismic example notebook using Dask for shot-level parallelism

Minor changes:
* Now using `nbval` to test notebooks
* Separating `Function` and `Symbol` types in internal hierarchy
* Make `Constant` a `Symbol`, not `Function`
* Added ability to switch backends at runtime
* Lots of internal refactoring...

3.0.3

A utility release to ensure a stable version before a set of planned API changes. Includes changes and some signficant progress on:

- Prototype YASK-backend
- Improved arguments handling
- Seismic examples and tutorials
- `RickerSource` and `demo_model` utilities
- New TTI formulation (shifted and centred)
- Anaconda install
- Autotuning fixes
- Compiler-debug model

3.0.2

Minor update with various fixes and some internal re-structuring:
* Fix potential memory leak and removed unused memmap interface
* Fix reverse-time iteration bug
* Fix summary printing in DSE/DLE
* YASK integration phase 2 (data movement through YaskGrids)
* Generalized loop blocking (includes several bug fixes)
* Additional linear convection example notebook with smooth initial condition

3.0.1

Minor release that contains several bug-fixes and additional documentation:
* Fixes and test for the `ForeignOperator` interface
* Improved argument derivation in `Operator.apply()`
* Improved expression scheduling in `Operator`
* New tutorial notebook on seismic modelling
* New introductory tutorial based on CFD examples
* Various documentation fixes throughout

3.0.0

This is the base release for Devito version 3.0. It primarily provides a new and improved `Operator` API as well as two backend engines that perform a sequence of configurable compiler passes during the code generation stages to increase the performance of the generated code:

* DSE - Devito Symbolic Engine: Provides performance optimization passes that manipulate SymPy equations to decrease the number of floating-point operations performed when evaluating a grid point.
* DLE - Devito Loop Engine: Manipulates the loop structure of the generated code based on an abstract syntax tree (AST) and provides typical loop-level optimisations, including data alignment, explicit SIMD vectorization and thread-level parallelism through OpenMP pragmas, and loop blocking.

Page 6 of 7

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.