freshcrate
Skin:/
Home > Frameworks > devito

devito

DSL and compiler framework for automated finite-differences and stencil computation

Why this rank:Strong adoptionRelease freshnessHealthy release cadence

Description

DSL and compiler framework for automated finite-differences and stencil computation

README

Devito: Fast Stencil Computation from Symbolic Specification

Build Status for the Core backend Build Status with MPI Build Status on GPU Code Coverage Slack Status asvPyPI version Binder Docker

Devito is a Python package to implement optimized stencil computation (e.g., finite differences, image processing, machine learning) from high-level symbolic problem definitions. Devito builds on SymPy and employs automated code generation and just-in-time compilation to execute optimized computational kernels on several computer platforms, including CPUs, GPUs, and clusters thereof.

About Devito

Devito provides a functional language to implement sophisticated operators that can be made up of multiple stencil computations, boundary conditions, sparse operations (e.g., interpolation), and much more. A typical use case is explicit finite difference methods for approximating partial differential equations. For example, a 2D diffusion operator may be implemented with Devito as follows

>>> grid = Grid(shape=(10, 10))
>>> f = TimeFunction(name='f', grid=grid, space_order=2)
>>> eqn = Eq(f.dt, 0.5 * f.laplace)
>>> op = Operator(Eq(f.forward, solve(eqn, f.forward)))

An Operator generates low-level code from an ordered collection of Eq (the example above being for a single equation). This code may also be compiled and executed

>>> op(t=timesteps, dt=dt)

There is virtually no limit to the complexity of an Operator -- the Devito compiler will automatically analyze the input, detect and apply optimizations (including single- and multi-node parallelism), and eventually generate code with suitable loops and expressions.

Key features include:

  • A functional language to express finite difference operators.
  • Straightforward mechanisms to adjust the discretization.
  • Constructs to express sparse operators (e.g., interpolation), classic linear operators (e.g., convolutions), and tensor contractions.
  • Seamless support for boundary conditions and adjoint operators.
  • A flexible API to define custom stencils, sub-domains, sub-sampling, and staggered grids.
  • Generation of highly optimized parallel code (SIMD vectorization, CPU and GPU parallelism via OpenMP and OpenACC, multi-node parallelism via MPI, blocking, aggressive symbolic transformations for FLOP reduction, etc.).
  • Distributed NumPy arrays over multi-node (MPI) domain decompositions.
  • Inspection and customization of the generated code.
  • Autotuning framework to ease performance tuning.
  • Smooth integration with popular Python packages such as NumPy, SymPy, Dask, and SciPy, as well as machine learning frameworks such as TensorFlow and PyTorch.

Installation

The easiest way to try Devito is through Docker using the following commands:

# get the code
git clone https://github.com/devitocodes/devito.git
cd devito

# start a jupyter notebook server on port 8888
docker-compose up devito

After running the last command above, the terminal will display a URL such as https://127.0.0.1:8888/?token=XXX. Copy-paste this URL into a browser window to start a Jupyter notebook session where you can go through the tutorials provided with Devito or create your own notebooks.

See here for detailed installation instructions and other options. If you encounter a problem during installation, please see the installation issues we have seen in the past.

Resources

To learn how to use Devito, here is a good place to start, with lots of examples and tutorials.

The website also provides access to other information, including documentation and instructions for citing us.

Some FAQs are discussed here.

Performance

If you are interested in any of the following

  • Generation of parallel code (CPU, GPU, multi-node via MPI);
  • Performance tuning;
  • Benchmarking operators;

then you should take a look at this README.

Get in touch

If you're using Devito, we would like to hear from you. Whether you are facing issues or just trying it out, join the conversation.

Interactive jupyter notebooks

The tutorial jupyter notebook are available interactively at the public binder jupyterhub.

Release History

VersionChangesUrgencyDate
v4.8.21## Changes - tests: Add an additional test for loop scheduling @EdCaunt (#2835) - api: Extend side API to all derivative operator shortcuts @EdCaunt (#2811) - Add separate images for CUDA 12 @JDBetteridge (#2785) - misc: Miscellaneous corner cases fixes @mloubout (#2730) - compiler: split alloc and init @mloubout (#2744) ## API - Tens stagg fix @mloubout (#2854) - api: fix interpolate with complex dtype @mloubout (#2849) - api: fix interp/eval of expressions @mloubout (#2843) - cLow2/23/2026
v4.8.20## Changes - CI: Cannot set `--env CUDA_VISIBLE_DEVICES` for `docker run` when using ng `--gpus "device=${CUDA_VISIBLE_DEVICES:-all}"` - dropping --env arg. @ggorman (#2710) - misc: switch to f-string throughout @mloubout (#2706) - misc: Remove make-pbs.py @FabioLuporini (#2700) - compiler: Hotfix the memory estimate for certain devices @EdCaunt (#2699) - misc: Expand derivative touchup @JDBetteridge (#2695) - misc: Remove decrepit folders @EdCaunt (#2663) - misc: Switch mpi-x pub to ieLow9/2/2025
v4.8.19# Drop support for Python 3.9 ## Changes ## Compiler - compiler: Privilege default par-tile with rcompile @FabioLuporini (#2636) - compiler: Make cse toposort stable @mloubout (#2633) ## 🐛 Bug Fixes - compiler: fix deque pop order @mloubout (#2637) - compiler: Make cse toposort stable @mloubout (#2633) ## Installation - deps: Drop Python 3.9 @enwask (#2631) **Full Changelog**: https://github.com/devitocodes/devito/compare/v4.8.18...v4.8.19Low6/20/2025
v4.8.18## Changes ## Compiler - compiler: Address various compiler hotspots with operators containing large expression counts @EdCaunt (#2624) ## Architectures and JIT - arch: fix json erro with no card @mloubout (#2620) ## 🐛 Bug Fixes - compiler: Revamp MPI hoisting and merging @FabioLuporini (#2629) ## Continuous Integration - ci: Fix pytest regression @enwask (#2623) ## Installation - pip prod(deps): update pytest-cov requirement from <6.1.2 to <6.2.2 @[dependabot[bot]Low6/14/2025
v4.8.17# Drop support for numpy <2, sympy <1.12 ## Changes - misc: Purge abc.abstractproperty as it is deprecated @EdCaunt (#2603) - compiler: Blocked SubDimensions now use root dimension name @EdCaunt (#2600) ## API - api: fix kwargs processing for tensor functions @mloubout (#2604) - api: Add DEVITO_DEVICE_DEFAULT env var @FabioLuporini (#2597) - api: revamp subsampling factors to avoid duplicates @mloubout (#2575) ## Compiler - compiler: Add VectorAccess as an internal type @FLow5/27/2025
v4.8.16## Changes - misc: Remove spurious rank info when running without MPI @EdCaunt (#2593) ## API - dsl: Add Real, Imag, and Conj operators @EdCaunt (#2564) ## Documentation - misc: Update FAQ.md @FabioLuporini (#2590) ## 🐛 Bug Fixes - api: Add retrocompat to is_imaginary for older sympy @mloubout (#2591) ## Installation - deps: upper bound on codepy due to breaking latest @mloubout (#2594) - api: Add retrocompat to is_imaginary for older sympy @mloubout (#2591) **FLow5/1/2025
v4.8.15## Changes ## API - api: Fix staggering setup and tensor rebuilding @mloubout (#2583) - dsl: Remove useless memory check (already done at alloc time) @FabioLuporini (#2563) - dsl: ensure SparseFunction coordinates and point symbols are always real @EdCaunt (#2557) ## Examples - examples: Fix norm for space order 4 @ZoeLeibowitz (#2565) ## Compiler - compiler: Improve quality of generated code with Bundles and MPI @FabioLuporini (#2587) - compiler: Fix issue 2577 - edit printLow4/23/2025
v4.8.14## Changes - misc: update all link to main @mloubout (#2552) ## API - api: Introduce complex numbers support (np.complex64/128) @mloubout (#2375) ## Documentation - misc: Update advisor with oneAPI 2025 @georgebisbas (#2533) ## Compiler - api: Introduce complex numbers support (np.complex64/128) @mloubout (#2375) - compiler: Enhance IR for GPU codegen @FabioLuporini (#2555) ## 🐛 Bug Fixes - compiler: Fix update_properties @FabioLuporini (#2548) ## Testing - cLow3/19/2025
v4.8.13## Changes ## API - dsl: Introduce ability to define Functions on Subdomains @EdCaunt (#2245) ## Compiler - compiler: fix application visitor for nest Call @mloubout (#2544) ## Architectures and JIT - arch: add missing openmp flag for aomp compiler @mloubout (#2541) ## 🐛 Bug Fixes - compiler: Fixup deterministic codegen @FabioLuporini (#2543) **Full Changelog**: https://github.com/devitocodes/devito/compare/v4.8.12...v4.8.13Low3/4/2025
v4.8.12## API - api: Relax custom coefficient spacing enforcement @mloubout (#2530) - api: fix backward compatibility of Substitution, missing function check @mloubout (#2522) - api: Misc fixes for builtins and harmonic averaging @mloubout (#2520) - api: fix equation pickling @mloubout (#2490) - api: more robust processing of custom weight with spacing @mloubout (#2489) - api: fix pickling of sparse operations @mloubout (#2488) - api: support custom coeffs for div/grad/curl @mloubout (#2486) Low2/17/2025
v4.8.11## Changes - dsl: Make CondEq and CondNe easier to import @EdCaunt (#2425) ## API - api: Support combination of condition and factor for ConditionalDimension @mloubout (#2413) - misc: minor miscelanous fixes @mloubout (#2406) ## Compiler - compiler: Bump default block size @FabioLuporini (#2412) - compiler: Revamp MultiSubDimension lowering @FabioLuporini (#2411) - compiler: fix cse with different conditionals @mloubout (#2410) - compiler: Patch bug in SubDomainSet lowering @ELow7/24/2024
v4.8.10## Changes ## Dependencies - deps: Fix sympy install for pypi ## API - compiler: Drop SubDomainSet earlier during compilation for more graceful lowering @EdCaunt (#2393) ## Compiler - compiler: Drop SubDomainSet earlier during compilation for more graceful lowering @EdCaunt (#2393) Low7/11/2024
v4.8.9## Changes ## Compiler - compiler: Default to index-mode=int32 @FabioLuporini (#2399) - compiler: Yet another batch of compilation tweaks @FabioLuporini (#2396) - compiler: Improve data streaming backend @FabioLuporini (#2390) ## MPI - MPI: Fix data assignement for single mpi rank and factor haloupdate @mloubout (#2394) ## 🐛 Bug Fixes - compiler: Strengthen int32 error check @FabioLuporini (#2402) - compiler: Patch CSE in presence of conditionals @FabioLuporini (#2392) - MLow7/10/2024
v4.8.8## Changes ## API - API: fix printer dtype processing @mloubout (#2388) ## Compiler - compiler: Revamp code generation for asynchronous operations @FabioLuporini (#2376) - compiler: Tweaks to enable decoupling on GPUs @FabioLuporini (#2385) ## 🐛 Bug Fixes - API: fix printer dtype processing @mloubout (#2388) - mpi: Avoid UnboundLocalVariable error @FabioLuporini (#2386) ## Continuous Integration - ci: avoid apt upgrade use base as is (updated every week} @mloubout (#23Low6/26/2024
v4.8.7## Changes - misc: Remove (object) in class definitions @EdCaunt (#2378) ## API - mpi: Fix data_gather for sparse functions @mloubout (#2379) - API: Revamp sparse subfunction @mloubout (#2374) - api: fix corner case staggered fd for centered x0 @mloubout (#2373) - api: cleanup FD tools and support zeroth order derivative @mloubout (#2368) ## Examples - examples: Add an example notebook for ADER-FD schemes @EdCaunt (#2338) - examples: fix tuto numbering for doc rendering @mlouLow6/4/2024
v4.8.6## Changes ## Examples - examples: Update tti fd for better stability @mloubout (#2363) ## Testing - tests: Add test for combining multiple ConditionalDimensions @EdCaunt (#2361) - CI: fix macos runner python @mloubout (#2362) ## Continuous Integration - CI: fix macos runner python @mloubout (#2362) ## Installation - pip prod(deps): update mpi4py requirement from <3.1.6 to <3.1.7 @dependabot (#2352) Low4/29/2024
v4.8.5Fix `Manifest.in` for missing pypi files **Full Changelog**: https://github.com/devitocodes/devito/compare/v4.8.4...v4.8.5Low4/23/2024
v4.8.4## Changes - compiler: Patch double buffering @FabioLuporini (#2247) - compiler: Fix unexpansion w custom coeffs @FabioLuporini (#2242) ## API - api: Cleanup sparse setup for precomputed @mloubout (#2353) - api: Add Hicks (sinc) interpolation api @mloubout (#2342) - api: add priority to fd coefficients for mixed derivatives @mloubout (#2331) - api: add support for 45 degree FD approx @mloubout (#2326) - api: Fix custom fd for staggered @mloubout (#2323) - api: Fix gpu-fit for TensLow4/18/2024
v4.8.3## Changes - Andrew add tests to test operator 2194 @AndrewCheng827 (#2207) ## API - api: enforce interpolation radius to be smaller than any input space â€Ļ @mloubout (#2234) - api: cleanup SubDimension and SubDomain @mloubout (#2219) - misc: various Dimension internal fixes @mloubout (#2205) - api: Cleanup and improve SubFunction @mloubout (#2198) - builtins: Support batched initialize_function @FabioLuporini (#2176) - api: Revamp interpolation/injection @FabioLuporini (#2128) #Low10/16/2023
v4.8.2 ## API - dsl: Removed dynamic classes for AbstractFunctions (fixes memory leaks seen by some users) @FabioLuporini (#2190) - api: Fix symbolic coefficients for cross derivatives @mloubout (#2185) - api: Allow parametric par-tile as input @FabioLuporini (#2168) - api: Use subs for origin in the case where index is a function @mloubout (#2120) - compiler: Add utility function to normalize sympy arguments @FabioLuporini (#2125) ## Examples - Examples: Free surface for coupled TTI equLow9/6/2023
v4.8.1## Changes ## Examples - Examples: tweaked userapi free surface notebook to use MPI-safe implementation @EdCaunt (#1952) ## Compiler - compiler: Revamp compilation of halo exchanges @FabioLuporini (#2089) - compiler: Do block with partial data reuse @FabioLuporini (#2094) - compiler: Relax _mark_overlappable @FabioLuporini (#2069) ## Architectures and JIT - compiler: only use offloading flags for amd gpu not cpu @mloubout (#2087) - arch: Support aws graviton @mloubout (#2080Low4/14/2023
v4.8.0## Changes ## misc - Updated contact information in the Code of Conduct. @ggorman (#2038) ## API - symbolics: use devito floor instead of Undefined Function @mloubout (#2052) - api: Add dimension-wise summing builtin and tests @mloubout (#1989) ## Examples - Examples: Add Darcy flow example @sashaowen (#1998) - examples: Add shallow water equations notebook @AtilaSaraiva (#1867) - examples: invoke tti example with --constant argument @ofmla (#1914) ## Documentation - dLow2/14/2023
v4.7.1## Changes ## Continuous Integration - docker: fix deployment condition @mloubout (#1985) Low8/3/2022
v4.7.0## Changes - compiler: Fix checkpoint size when save != None @speglich (#1906) - compiler: Revamp generation of implicit equations @FabioLuporini (#1908) ## API - compiler: Support interpolation with user-provided implicit dims @FabioLuporini (#1948) - api: Add op.cinterface for C-level interoperability @FabioLuporini (#1843) ## Examples - examples: Fix grammar and spelling mistakes in pml example @PershingSquare (#1930) - examples: Update MPI tutorial notebook and scripts @geoLow8/3/2022
v4.6.2## Changes ## Documentation - misc: update pypi @georgebisbas (#1837) ## Compiler - compiler: Augment code generation capabilities for CUDA/HIP/SYCL support @FabioLuporini (#1828) ## GPU - gpu: Adding DPCPP compiler support @reguly (#1836) ## 🐛 Bug Fixes - compiler: Patch linearization pass @FabioLuporini (#1839) Low2/16/2022
v4.6.1## Changes ## API - ckp: Checkpointing update @navjotk (#1774) - sympy: Extend SymPy support to 1.9 @mloubout (#1786) ## Examples - benchmarks: custom click type for grid params @mloubout (#1832) - examples: Add nonzero example to ConditionalDimension tutorial @georgebisbas (#1820) - examples: add adjoint, born, gradient, checkpointing to the tti example @mloubout (#1809) - examples: Improve tti_pure_wave_eq tutorial @ofmla (#1779) - examples: Add tti_pure_wave_eq tutorial @ofmlLow2/11/2022
v4.6## Changes ## API - sympy: proper version check @mloubout (#1769) ## Examples - examples: enforce stable space order for self adjoint op @mloubout (#1747) - tests: add tti_setup to gradientJ test @ofmla (#1740) ## Compiler - compiler: Add machinery for custom memory allocators and MPI @FabioLuporini (#1764) - compiler: lift skewing in higher block levels @georgebisbas (#1735) - compiler: Loop fission @FabioLuporini (#1732) - compiler: improve HB generated code @georgebisbasLow10/6/2021
v4.5# Changes ## API - dsl: Generalised MatrixSparseTimeFunction @tjb900 (#1719) - dsl: Improve support for running operators concurrently in python threads @tjb900 (#1708) ## Examples - examples: Add viscoacoustic Born operator to 1st sls equation @nogueirapeterson (#1690) - examples: Switch to adjoint time derivative @mloubout (#1706) - examples: re-run skew adjoint notebook @jkwashbourne (#1710) - examples: Fix source illumination @rabreucristo (#1707) - examples: Fix broken gempLow7/26/2021
v4.4# Changes ## 🐛 Bug Fixes - compiler: Patch TempFunction pickling @FabioLuporini (#1677) - bench: Patch ASV's generation of new plots @FabioLuporini (#1672) - gpu: Fix leaks due to excessive fetching/prefetching @FabioLuporini (#1658) - types: Drop unsafe/unnecessary memoization in the arguments processing engine @FabioLuporini (#1647) - compiler: Fix processing of grid spacing @FabioLuporini (#1628) - misc: Avoid crashing on missing _memfree_args @FabioLuporini (#1612) - compiler: FLow4/23/2021
v4.3## 🐛 Bug Fixes - Patch aliases' min-storage option @FabioLuporini (#1535) - Fix loop collapsing @FabioLuporini (#1534) - operator: Patch grid-carried argument overrides @FabioLuporini (#1523) - Fix profiling IET for Intel Advisor benchmarking @georgebisbas (#1516) - Fix ARM issues @georgebisbas (#1515) - make test tools less random @ggorman (#1507) - ir: Fixup _lower_stepping_dims @Leitevmd (#1504) - Fix custom coefficients on staggered grids @EdCaunt (#1497) - Tensor grid fixup @mloLow1/20/2021
v4.2.3## Synopsis - Performance optimizations in the symbolic layer and generated code for x86, GPU and MPI. - Various minor correctness and performance bug fixes. - Improvements to application developer API. - Added new tutorial notebooks. - Increased test coverage - particularly for MPI and GPU's. ## Backwards compatibility breaks and deprecations None ## Changes - Restrict pytest to < 6.0 @rhodrin (#1411) - pip prod(deps): update distributed requirement from <2.20 to <2.22 @dependabot Low8/5/2020
v4.2.2Compiler: - Improve CIRE - Conditionals improvement - Improve aliases detection Misc: - Updated minimum SymPy version requirement - Refreshed docs - Various bug fixes. - Added more tests for CI and performance regression. Benchmark: - Improved asv - Added support for adjoint/jacobian/jacobian_adjoint - Improved JIT support for AMD, added AOMP compiler Example: - New Skew Self Adjoint operator - Homogenize seismic examples and Model. Many thanks to all the Low6/5/2020
v4.2.1pip * Removed direct dependencies to enable PyPI Air-Speed Velocity (ASV) * Added performance regression testing via ASV CI/CD * Automatically start and stop Azure VM's for testing. Benchmarking * Additional performance metrics Documentation * New examples for TTI adjoint and viscoacoustic. * Updated project logo and documentation version. * Various improvements to examples/notebooks. Bugfixes * Loop fusion. * MPI/SubDomain. Many thanks to all the contributors to thisLow5/1/2020
v4.2GPU support * Added OpenACC 2.6 code generation support. * Added domain decomposition support for multi-node-multi-GPU via MPI and OpenACC. Testing, CI/CD * Added testing with PGI compiler suite v19.10 on NVidia K80 GPU's. * Enhanced CI testing for OpenMP 5 offloading onto GPU's. * Enhanced CI testing for domain decomposition with MPI. Performance optimizations * Wide range of performance optimizations to the Devito compiler to speed-up compile time (~2-5x speedup in compilatioLow4/16/2020
v4.1GPUs * 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 DocumentaLow2/26/2020
v4.0Tensor algebra support (#873): - `VectorFunction` and `VectorTimeFunction` - (2nd order) `TensorFunction` and `TensorTimeFunction` - Full support for FD and related operations (derivatives, shortcuts, solve, ...) - Differential operators such as `div`, `grad` and `curl` FD extensions: - Custom FD with user-supplied coefficients as `Function` (#964) Extended and more rigorous support for staggered grids (#873): - True half-grid staggering (`u(x + h_x/2)`) - Automatic evLow12/5/2019
v3.5Release notes -------------- * MPI support: - Python-level: MPI-distributed NumPy arrays. - C-level: code generation for sub-domains, staggered grids, operators with coupled PDEs. - C-level: performance optimizations (e.g., computation-communication overlap). * Lazy evaluation of derivatives. * Revisited staggered grids API (now Dimension-based, previously mask-based). * Re-engineered clustering (which means smarter loop fusion/fission). * DSE: Improved aliases detection. * DLELow8/8/2019
v3.4Release notes -------------- * Preliminary support for MPI (no changes to user code requested) * Support for staggered grids * Improved compilation technology * Improved Operator autotuning * More powerful DSL (e.g., take derivatives of entire expressions such as `(u+v).dx`) * More efficient pickling * Misc bug fixes * New modeling examples based on the elastic wave equation * New examples describing aspects of the compilation technology Low12/6/2018
v3.3This release ships the following features, besides a large number of misc improvements and bug fixes * Support for Docker-based installation * Introduction of PrecomputedSparseFunction for SparseFunction with precomputed coefficients * Smarter JIT engine, including autodetection of the backend-compiler version for ad-hoc optimisations * Operator pickling * Introduction of new IR level: the ScheduleTree level * Smarter loop generation * Better, more efficient data dependence analysis * Low9/20/2018
dft-paperRelease dft-paperLow6/5/2018
v3.2.0This release builds upon ``v3.1.0`` including all features from Devito ``v3.2-beta`` as well as the following changes: * Domain-allocation switch: now Operators run over the entire Grid, no matter what the stencil radius is. * "Min-max" API to iterate over subregions of the Grid. * A set of examples showing how to use Devito for linear algebra calculations * Better seismic examples, more resampling. * Parallelization of loops with reduction dependences with OpenMP atomics * Simpler, bettLow4/13/2018
v3.2-beta* 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 ``EqLow2/27/2018
v3.1.0This 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 iLow10/28/2017
v3.0.3A 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 modelLow9/26/2017
v3.0.2Minor 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 conditionLow7/5/2017
3.0.1Minor 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 Low6/7/2017
v3.0.0This 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 EnLow5/19/2017
v2.0.1Initial tag of stable v2.0.1 pre-release. Low1/27/2017

Dependencies & License Audit

Loading dependencies...

Similar Packages

0xClawđŸĻ€ The first autonomous hackathon agent stop assisting and start competing (🏆 Hackathon Champion Project).master@2026-06-01
BESSERA Python-based low-modeling low-code open-source platform for smart and AI-enhanced softwarev7.8.1
DrasilGenerate all the things (focusing on research software)main@2026-06-01
workspace-architectWorkspace Architect is a zero-friction CLI tool that provides curated collections of specialized agents, instructions, and prompts to supercharge your GitHub Copilot experience.main@2026-05-29
cadwynProduction-ready community-driven modern Stripe-like API versioning in FastAPI6.2.2

More in Frameworks

langchainThe agent engineering platform
deer-flowAn open-source long-horizon SuperAgent harness that researches, codes, and creates. With the help of sandboxes, memories, tools, skill, subagents and message gateway, it handles different levels of ta
tqdmFast, Extensible Progress Meter
simBuild, deploy, and orchestrate AI agents. Sim is the central intelligence layer for your AI workforce.