Recent Releases of devito

devito - 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 ieee link @georgebisbas (#2688)

API

  • dsl: Add an additional Border convenience class for boundary conditions @EdCaunt (#2646)
  • compiler: Add a utility to estimate memory usage for an operator @EdCaunt (#2659)
  • dsl: Expand derivative @JDBetteridge (#2559)
  • misc: Add custom warnings functionality @JDBetteridge (#2692)
  • api: fix custom coeffs with cross derivatives @mloubout (#2672)

Examples

  • examples: Fix density handling in acoustic @mloubout (#2716)
  • Clean notebook metadata @JDBetteridge (#2639)

Documentation

  • docs: fix mmin/mmax docstring @mloubout (#2703)
  • Clean notebook metadata @JDBetteridge (#2639)

Compiler

  • compiler: prevent directions from non indexed @mloubout (#2704)
  • compiler: Avoid generating parentheses when not needed @FabioLuporini (#2689)
  • compiler: Pass the whole descriptor to buf_reuse cbk @FabioLuporini (#2687)
  • compiler: Reapply "Cache Scope + Dependence instances" @enwask (#2677)
  • compiler: Cache Scope + Dependence instances @enwask (#2669)
  • compiler: fix conditional reductions @mloubout (#2671)
  • compiler: fix temp/array alloc @mloubout (#2664)
  • mpi: fix allreduce iteration space @mloubout (#2662)
  • compiler: Lazy IET visitors + Search @enwask (#2621)
  • compiler: add top description to generated file @mloubout (#2652)

MPI

  • mpi: Prevent errors with single rank @mloubout (#2698)
  • compiler: Fixup MPI over Arrays + arguments overriding @FabioLuporini (#2697)
  • data: prevent mpi comm with single rank @mloubout (#2685)
  • mpi: fix multi conditional for allreduce @mloubout (#2673)
  • mpi: fix in-loop allreduce with multiple reductions @mloubout (#2668)
  • mpi: fix allreduce iteration space @mloubout (#2662)

Architectures and JIT

  • arch: prevent shell string escape in codepy cmdline strings @mloubout (#2715)

πŸ› Bug Fixes

  • compiler: Hotfix estimate memory again @EdCaunt (#2707)
  • compiler: prevent directions from non indexed @mloubout (#2704)
  • compiler: Fixup MPI over Arrays + arguments overriding @FabioLuporini (#2697)
  • compiler: Fixup nbytes-avail-mapper @FabioLuporini (#2654)
  • compiler: Call set_device in pthreads @FabioLuporini (#2679)
  • compiler: Add buf-reuse opt-option and rcompile caching @FabioLuporini (#2674)
  • compiler: Fix HaloTouch hashing @FabioLuporini (#2676)
  • Revert "compiler: Cache Scope + Dependence instances" @mloubout (#2675)
  • mpi: fix multi conditional for allreduce @mloubout (#2673)
  • compiler: Fix Bundle.symbolic_shape @FabioLuporini (#2665)
  • compiler: Patch IterationSpace.intersection @FabioLuporini (#2647)
  • compiler: Patch merge and reduction HaloScheme passes @FabioLuporini (#2645)

Continuous Integration

  • compiler: improve rcompile @mloubout (#2719)
  • Remove dangling layers. @ggorman (#2686)
  • ci: Set CONTAINER_NAME within a step. @ggorman (#2684)
  • ci: isolate GPU runners, respect CUDAVISIBLEDEVICES, drop global prunes @ggorman (#2680)

Installation

  • pip prod(deps): update matplotlib requirement from <3.10.6 to <3.10.7 @dependabot[bot] (#2722)
  • pip prod(deps): update cupy-cuda12x requirement from <13.5.2 to <13.6.1 @dependabot[bot] (#2720)
  • gh(deps): bump actions/checkout from 4 to 5 @dependabot[bot] (#2709)
  • pip prod(deps): update dask-cuda requirement from <25.6.1 to <25.8.1 @dependabot[bot] (#2705)
  • install: Remove files and directories not needed for install @JDBetteridge (#2702)
  • pip prod(deps): update matplotlib requirement from <3.10.4 to <3.10.6 @dependabot[bot] (#2694)
  • pip prod(deps): bump pyrevolve from 2.2.5 to 2.2.6 @dependabot[bot] (#2678)
  • pip prod(deps): update distributed requirement from <2025.5.2 to <2025.7.1 @dependabot[bot] (#2666)
  • pip prod(deps): update fsspec requirement from <2025.5.2 to <2025.7.1 @dependabot[bot] (#2670)
  • pip prod(deps): update cupy-cuda12x requirement from <13.4.2 to <13.5.2 @dependabot[bot] (#2661)
  • pip prod(deps): update mpi4py requirement from <4.0.4 to <4.1.1 @dependabot[bot] (#2649)
  • deps: Bump upper NumPy version to 2.3.1 @EdCaunt (#2653)
  • pip prod(deps): update cgen requirement from <2021,>=2020.1 to >=2020.1,<2026 @dependabot[bot] (#2642)
  • pip prod(deps): update pillow requirement from <11.2.2,>11 to >11,<11.3.1 @dependabot[bot] (#2651)
  • pip prod(deps): bump pyrevolve from 2.2.4 to 2.2.5 @dependabot[bot] (#2650)
  • pip prod(deps): update distributed requirement from <2025.4.2 to <2025.5.2 @dependabot[bot] (#2641)
  • pip prod(deps): update scipy requirement from <1.15.3 to <1.15.4 @dependabot[bot] (#2648)
  • pip prod(deps): update dask-cuda requirement from <25.4.1 to <25.6.1 @dependabot[bot] (#2644)
  • pip prod(deps): update matplotlib requirement from <3.10.2 to <3.10.4 @dependabot[bot] (#2640)

Full Changelog: https://github.com/devitocodes/devito/compare/v4.8.19...v4.8.20

- Python
Published by github-actions[bot] 11 months ago

devito - 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.19

- Python
Published by github-actions[bot] about 1 year ago

devito - 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] (#2632)
  • pip prod(deps): update fsspec requirement from <2025.3.3 to <2025.5.2 @dependabot[bot] (#2630)
  • deps: Fix pyproject.toml @mloubout (#2628)
  • ci: Fix pytest regression @enwask (#2623)

Full Changelog: https://github.com/devitocodes/devito/compare/v4.8.17...v4.8.18

- Python
Published by github-actions[bot] about 1 year ago

devito - 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 DEVITODEVICEDEFAULT env var @FabioLuporini (#2597)
  • api: revamp subsampling factors to avoid duplicates @mloubout (#2575)

Compiler

  • compiler: Add VectorAccess as an internal type @FabioLuporini (#2598)

MPI

  • mpi: Fix halo exchanges from BundleViews @FabioLuporini (#2602)

Architectures and JIT

  • arch: Improve GPU autodetection @FabioLuporini (#2614)

πŸ› Bug Fixes

  • arch: Use the node's max memory transaction size @FabioLuporini (#2619)
  • mpi: Fix halo exchanges from BundleViews @FabioLuporini (#2602)
  • compiler: Fixup factor overriding @FabioLuporini (#2601)
  • api: revamp subsampling factors to avoid duplicates @mloubout (#2575)

Installation

  • gh(deps): bump docker/setup-qemu-action from 2 to 3 @dependabot[bot] (#2618)
  • gh(deps): bump docker/login-action from 2 to 3 @dependabot[bot] (#2617)
  • gh(deps): bump release-drafter/release-drafter from 5 to 6 @dependabot[bot] (#2616)
  • gh(deps): bump peaceiris/actions-gh-pages from 3 to 4 @dependabot[bot] (#2615)
  • install: switch to dynamic version to avoid _version file issue @mloubout (#2613)
  • misc: remove unnecessary files with pyproject @mloubout (#2612)
  • gh(deps): bump peter-evans/repository-dispatch from 2 to 3 @dependabot[bot] (#2609)
  • gh(deps): bump docker/setup-buildx-action from 2 to 3 @dependabot[bot] (#2608)
  • gh(deps): bump docker/build-push-action from 3 to 6 @dependabot[bot] (#2607)
  • gh(deps): bump docker/metadata-action from 4 to 5 @dependabot[bot] (#2610)
  • gh(deps): bump codecov/codecov-action from 4 to 5 @dependabot[bot] (#2606)
  • deps: Update minimal for sympy and numpy @mloubout (#2605)
  • deps: Add upper bound to all deps to avoid surprises @mloubout (#2596)

Full Changelog: https://github.com/devitocodes/devito/compare/v4.8.16...v4.8.17

- Python
Published by github-actions[bot] about 1 year ago

devito - 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)

Full Changelog: https://github.com/devitocodes/devito/compare/v4.8.15...v4.8.16

- Python
Published by github-actions[bot] about 1 year ago

devito - 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 printer for unevaluation Mul @ZoeLeibowitz (#2578)
  • compiler: Enrich Ops data structure @FabioLuporini (#2576)
  • compiler: Allow str cast type @mloubout (#2566)
  • compiler: Fix reduction multi_partile @mloubout (#2560)
  • compiler: Tweak init_core/halo properties @FabioLuporini (#2558)

MPI

  • mpi: Fix correctness of halo exchanges for Bundles @FabioLuporini (#2582)

πŸ› Bug Fixes

  • compiler: Avoid nvc++ array reductions and add MPI fallback @mloubout (#2589)
  • compiler: Fix uxreplace behaviour with numeric expressions @FabioLuporini (#2571)
  • compiler: Fix reconstruction/pickling of low level objects @FabioLuporini (#2567)
  • compiler: revert broken reduce par_tile @mloubout (#2562)

Testing

  • tests: Remove floating point equality assertions @JDBetteridge (#2539)

Continuous Integration

  • Update 20.04 runners to 22.04 @JDBetteridge (#2584)
  • CI: Ensure docker errors at test failure with codecov @ZoeLeibowitz (#2572)

Installation

  • pip prod(deps): update anytree requirement from <=2.12.1,>=2.4.3 to >=2.4.3,<=2.13.0 @dependabot (#2580)
  • deps: Add pillow version requirement @mloubout (#2568)

Full Changelog: https://github.com/devitocodes/devito/compare/v4.8.14...v4.8.15

- Python
Published by github-actions[bot] about 1 year ago

devito - 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

  • ci: Fix docker codecov @mloubout (#2550)

Installation

  • install: Add packaging to requirements @JDBetteridge (#2556)

Full Changelog: https://github.com/devitocodes/devito/compare/v4.8.13...v4.8.14

- Python
Published by github-actions[bot] over 1 year ago

devito - 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.13

- Python
Published by github-actions[bot] over 1 year ago

devito - 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)
  • dsl: Add ArgProvider inheritance to AbstractSymbol @EdCaunt (#2482)
  • API: Fix Sparse rebuild with explicit empty subfunctions @mloubout (#2473)
  • API: revamp cross derivative shortcuts @mloubout (#2458)
  • api: revamp custom coefficients API @mloubout (#2434)
  • API: Support harmonic averaging for parameter Function @mloubout (#2456)
  • dsl: Improve Function rebuilding and use of preexisting arrays as Function data @EdCaunt (#2438)
  • api: make sure staggered FD interpolates shifts @mloubout (#2439)
  • types: Introduce abstract class LocalType @ZoeLeibowitz (#2433)
  • api: Enforce sympy shifts @mloubout (#2471)
  • api: fix derivative kwargs at call @mloubout (#2469)

Examples

  • api: Misc fixes for builtins and harmonic averaging @mloubout (#2520)
  • examples: Fix ADER notebook numbering @EdCaunt (#2450)

Documentation

  • docs: Update CITATION.md @georgebisbas (#2499)
  • docs: Elaborate on SubDomains for BCs w MPI @georgebisbas (#2491)
  • examples: Enhance MPI notebook with paper material @georgebisbas (#2492)
  • misc: Update FAQ @EdCaunt (#2481)

Compiler

  • compiler: Misc extensions towards supporting thread block clustering @FabioLuporini (#2538)
  • compiler: Misc improvements to code generation @FabioLuporini (#2516)
  • compiler: fix scalar aliases from conditionals @mloubout (#2517)
  • compiler: Rework HaloSpot optimization @georgebisbas (#2477)
  • compiler: Expose Bundle's properties correctly @FabioLuporini (#2487)
  • dsl: Move SubDimension thickness evaluation to the thicknesses themselves @EdCaunt (#2470)
  • compiler: Improve CIRE's cost model @FabioLuporini (#2476)
  • compiler: Add missing symbolic casts @mloubout (#2462)
  • compiler: Remove counters from subdomains and automatically generate unique names @EdCaunt (#2431)
  • compiler: Propagate metadata down to argdefaults @FabioLuporini (#2459)
  • compiler: Minor tweaks for elastic code gen @FabioLuporini (#2453)
  • compiler: Add various performance optimization variants @FabioLuporini (#2446)
  • compiler: respect fetch direction @mloubout (#2441)
  • dsl: Fix missing sympy assumptions during rebuilding @EdCaunt (#2436)
  • compiler: Tweak par-tile unrolling and revamp MPI topology @FabioLuporini (#2426)
  • misc: Revamp exception hierarchy @FabioLuporini (#2500)
  • compiler: Tweak custom coefficients error handling @FabioLuporini (#2519)
  • compiler: Add 'groupby' mode to MapNodes visitor @ZoeLeibowitz (#2502)
  • compiler: Fix code generation for pow and fabs when using float32 @JDBetteridge (#2504)

MPI

  • compiler: Rework HaloSpot optimization @georgebisbas (#2477)

Architectures and JIT

  • arch: Support Grace arm architecture @mloubout (#2537)
  • compiler: Support compiler flags for Cortex @georgebisbas (#2531)
  • arch: make sure Device get thread config from host @mloubout (#2468)
  • arch: Avoid deprecated compiler flags @FabioLuporini (#2461)
  • arch: add rpath option to include_dirs @mloubout (#2466)
  • arch: fix graviton march @mloubout (#2445)

πŸ› Bug Fixes

  • api: Fix custom coefficients inlining @FabioLuporini (#2524)
  • api: fix backward compatibility of Substitution, missing function check @mloubout (#2522)
  • compiler: Fixup powtomul @FabioLuporini (#2518)
  • compiler: Fix bug in concretization of conditionals containing Thicknesses @EdCaunt (#2510)
  • compiler: Default CustomDimension.local to True @FabioLuporini (#2507)
  • misc: Prevent builtins on transient functions @FabioLuporini (#2506)
  • compiler: Avoid allocating Bundles on the host if transient @FabioLuporini (#2503)
  • compiler: Generate fminf/fmaxf where necessary @FabioLuporini (#2501)
  • api: fix alias for buffering @mloubout (#2497)
  • api: fix equation pickling @mloubout (#2490)
  • compiler: Fixup minor cire-rotate bug @FabioLuporini (#2472)
  • API: revamp cross derivative shortcuts @mloubout (#2458)
  • compiler: Hotfix and simplify minimize_symbols @FabioLuporini (#2452)
  • compiler: Fix handling of modulo 1 for MPI @mloubout (#2451)
  • compiler: Patch mapify-reduce for SparseTimeFunctions @FabioLuporini (#2449)
  • dsl: Fix missing sympy assumptions during rebuilding @EdCaunt (#2436)
  • compiler: Patch indirect ConditionalDimension @FabioLuporini (#2432)
  • compiler: fix unevaluation of sparse cluster @mloubout (#2435)
  • misc: Fix EnrichedTuple rebuilding @enwask (#2418)
  • api: Make Derivative Reconstructable @mloubout (#2429)
  • misc: Fix operator output with gflopss=None @FabioLuporini (#2496)
  • misc: Fix operator output with OI=None @FabioLuporini (#2495)

Benchmarking

  • misc: Fixup Profiler.addglobalvanilla @FabioLuporini (#2494)

Testing

  • CI: Revert amd CI to a stable rocm for openmp offloading @mloubout (#2529)
  • CI: update amd base to working ucx/rocm versions @mloubout (#2527)
  • tests: Add test for using a Constant as a condition in a ConditionalDimension @EdCaunt (#2512)

Continuous Integration

  • ci: Restore MPI notebook testing @georgebisbas (#2478)

Installation

  • pip prod(deps): update psutil requirement from <7.0,>=5.1.0 to >=5.1.0,<8.0 @dependabot (#2535)
  • pip prod(deps): update mpi4py requirement from <4.0.3 to <4.0.4 @dependabot (#2536)
  • docker: add option to install gcc 14 @mloubout (#2532)
  • CI: Revert amd CI to a stable rocm for openmp offloading @mloubout (#2529)
  • pip prod(deps): update mpi4py requirement from <4.0.2 to <4.0.3 @dependabot (#2528)
  • docker: update compilers to more recent versions @mloubout (#2526)
  • deps: Update scipy ascent import @ZoeLeibowitz (#2514)
  • pip prod(deps): update numpy requirement from <2.2,>1.16 to >1.16,<2.3 @dependabot (#2498)
  • misc: Always search the CUDA SDK's math_libs include dir @FabioLuporini (#2480)
  • pip prod(deps): update ipyparallel requirement from <8.9 to <9.1 @dependabot (#2479)
  • pip prod(deps): update mpi4py requirement from <4.0.1 to <4.0.2 @dependabot (#2467)
  • deps: fix deprecated pkg_resources @mloubout (#2463)
  • pip prod(deps): update numpy requirement from <2.1,>1.16 to >1.16,<2.2 @dependabot (#2443)
  • pip prod(deps): update mpi4py requirement from <3.1.7 to <4.0.1 @dependabot (#2430)

New Contributors

  • @enwask made their first contribution in https://github.com/devitocodes/devito/pull/2418
  • @JDBetteridge made their first contribution in https://github.com/devitocodes/devito/pull/2504

Full Changelog: https://github.com/devitocodes/devito/compare/v4.8.11...v4.8.12

- Python
Published by github-actions[bot] over 1 year ago

devito - 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 @EdCaunt (#2408)

MPI

  • misc: minor miscelanous fixes @mloubout (#2406)

Architectures and JIT

  • arch: fix switchconfig with new setup @mloubout (#2419)
  • arch: Support more platforms @mloubout (#2415)

πŸ› Bug Fixes

  • compiler: Fix parlang reductions over >= 4 loops @FabioLuporini (#2417)
  • api: Patch ConditionalDimension args @mloubout (#2414)
  • compiler: fix cse with different conditionals @mloubout (#2410)
  • misc: minor miscelanous fixes @mloubout (#2406)

Continuous Integration

  • deps: Drop python 3.8 @mloubout (#2423)

Full Changelog: https://github.com/devitocodes/devito/compare/v4.8.10...v4.8.11

- Python
Published by github-actions[bot] almost 2 years ago

devito - 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)

- Python
Published by github-actions[bot] about 2 years ago

devito - 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)
  • MPI: Fix data assignement for single mpi rank and factor haloupdate @mloubout (#2394)

Installation

  • deps: support sympy 1.13 @mloubout (#2400)

Full Changelog: https://github.com/devitocodes/devito/compare/v4.8.8...v4.8.9

- Python
Published by github-actions[bot] about 2 years ago

devito - 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 (#2384)

Installation

  • deps: support numpy 2.0 @mloubout (#2391)
  • pip prod(deps): update psutil requirement from <6.0,>=5.1.0 to >=5.1.0,<7.0 @dependabot (#2389)

Full Changelog: https://github.com/devitocodes/devito/compare/v4.8.7...v4.8.8

- Python
Published by github-actions[bot] about 2 years ago

devito - 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 @mloubout (#2367)

Documentation

  • examples: fix tuto numbering for doc rendering @mloubout (#2367)

Compiler

  • compiler: Misc compiler improvements @FabioLuporini (#2380)
  • compiler: Support for C-level MPI_Allreduce @FabioLuporini (#2344)
  • compiler: sequentialise halo touch @mloubout (#2372)
  • compiler: Fix placement of ConditionalDimension in subdomain @georgebisbas (#2050)

MPI

  • mpi: Fix data_gather for sparse functions @mloubout (#2379)
  • ci: tweak mpi setup to allow -s and hide output @mloubout (#2350)

Architectures and JIT

  • arch: Ensure compiler check catches permission errors @gbruer15 (#2340)

πŸ› Bug Fixes

  • tests: Fixup conftest's setrunreset() @FabioLuporini (#2381)
  • mpi: Fix data_gather for sparse functions @mloubout (#2379)
  • dsl: Correct retention of wrong branch in filter_ordered @EdCaunt (#2377)
  • api: Always expand time derivatives @mloubout (#2369)
  • dsl: Patch edge-case derivative specifications @EdCaunt (#2366)
  • compiler: Fix placement of ConditionalDimension in subdomain @georgebisbas (#2050)

Testing

  • ci: tweak mpi setup to allow -s and hide output @mloubout (#2350)

Continuous Integration

  • CI: fix decoupler config to use correct python @mloubout (#2382)
  • arch: Ensure compiler check catches permission errors @gbruer15 (#2340)

Installation

  • reqs: Update cached_property to functools version @EdCaunt (#2359)
  • docker: Drop unused mpi4 and fix nvhpc mpi4py setup @mloubout (#2365)

New Contributors

  • @gbruer15 made their first contribution in https://github.com/devitocodes/devito/pull/2340

Full Changelog: https://github.com/devitocodes/devito/compare/v4.8.6...v4.8.7

- Python
Published by github-actions[bot] about 2 years ago

devito - 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)

- Python
Published by github-actions[bot] about 2 years ago

devito - v4.8.5

Fix Manifest.in for missing pypi files

Full Changelog: https://github.com/devitocodes/devito/compare/v4.8.4...v4.8.5

- Python
Published by github-actions[bot] about 2 years ago

devito - 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 TensorFunction @mloubout (#2285)
  • misc: Switch off develop-mode @FabioLuporini (#2280)
  • api: Minor fixes to arithmetic operations with scalar and tensors @mloubout (#2276)
  • misc: Process args for subdimensions @mloubout (#2266)
  • api: Add shift and fd order option to all FD operators: @mloubout (#2258)
  • api: Always make subsampling factor symbolic @mloubout (#2259)
  • api: prevent derivative shortcut with incompatible fd order @mloubout (#2254)

Examples

  • examples: Interpolation tutorial notebook @mloubout (#2252)
  • examples: Update MPI notebook to reference inner and outer halo terminology @EdCaunt (#2319)
  • Correct the Poisson equation in the cavity flow example @rafael-fuente (#2308)
  • example: small cleanup of tti for easier reuse @mloubout (#2294)

Documentation

  • misc: Add MPI0 logging level @georgebisbas (#2130)
  • examples: Fix typo in tutorial numbering @EdCaunt (#2356)
  • misc: Docstring updates @ZoeLeibowitz (#2223)

Compiler

  • compiler: Tweak check_stability to ensure cleanup is performed @FabioLuporini (#2335)
  • compiler: Patch Guards.simplify_and @FabioLuporini (#2334)
  • compiler: Enable generation of templated function declarations @FabioLuporini (#2333)
  • compiler: Add optional pass for runtime stability check @FabioLuporini (#2327)
  • compiler: Tweak Weights.value @FabioLuporini (#2328)
  • compiler: Add Weights.value utility @FabioLuporini (#2322)
  • compiler: Revamp lowering of IndexDerivatives @FabioLuporini (#2310)
  • compiler: Revamp linearization @FabioLuporini (#2317)
  • compiler: Adjust names used for cire-rotate dimensions @EdCaunt (#2305)
  • compiler: Optimize normalizereductionsdense @FabioLuporini (#2311)
  • compiler: Generate less integer arithmetic @FabioLuporini (#2301)
  • compiler: Misc codegen enhancements @FabioLuporini (#2300)
  • compiler: Revamp data alignment @FabioLuporini (#2296)
  • compiler: Improve IndexDerivative lowering @FabioLuporini (#2288)
  • compiler: Misc code generation improvements @FabioLuporini (#2282)
  • compiler: Fix handling of redundant derivatives @FabioLuporini (#2284)
  • compiler: Introduce cluster-level Temp @georgebisbas (#2281)
  • compiler: Add pass to abridge SubDimension names where possible @EdCaunt (#2269)
  • compiler: Improve quality of generated code @FabioLuporini (#2263)
  • compiler: Add missing numpy dtypes @mloubout (#2271)
  • compiler: Machinery to generate vector types @FabioLuporini (#2253)
  • compiler: Introduce symbolic fencing @FabioLuporini (#2244)
  • compiler: Improve robustness of dspace derivation @FabioLuporini (#2238)

MPI

  • misc: Add MPI0 logging level @georgebisbas (#2130)
  • CI: revamp parallel marker @mloubout (#2347)
  • mpi: Generate deterministic code for overlap mode @georgebisbas (#2303)
  • MPI: Fix sparse subfunction handling when used without parent @mloubout (#2278)
  • mpi: Fix haloupdate with inner dim [v2] @FabioLuporini (#2272)
  • mpi: Add utility to get number of ranks on a single node @mloubout (#2265)
  • dsl: Patch domain decomposition bug with SubDomains @EdCaunt (#2246)

Architectures and JIT

  • Use getnvidiacc to get Nvidia gpu architecture @ggorman (#2343)
  • arch: Add denormal flag for clang @mloubout (#2304)
  • arch: patch compiler version @mloubout (#2297)
  • example: small cleanup of tti for easier reuse @mloubout (#2294)
  • arch: support rocm for gpu info @mloubout (#2261)
  • compiler: add extra platforms and language to the custom compiler @mloubout (#2255)
  • arch: Intel PVC mapping @FabioLuporini (#2215)

πŸ› Bug Fixes

  • compiler: Make code gen of elementary funcs dtype-aware @FabioLuporini (#2349)
  • compiler: Tweak device-aware blocking @FabioLuporini (#2348)
  • compiler: Hotfix unevaluation.Pow(1, ...) @FabioLuporini (#2321)
  • compiler: Fix min/max reductions to be backend-portable @FabioLuporini (#2315)
  • misc: Use str for generalization @mloubout (#2313)
  • compiler: Block reductions irrespective of par-tile @FabioLuporini (#2309)
  • compiler: Fix space conditions with loop blocking @FabioLuporini (#2302)
  • data: Prevent allocator info to be lost at finalize @mloubout (#2295)
  • misc: Fix gpu-fit for multiple tensors @mloubout (#2286)
  • compiler: Fix minor codegen issues after pickling @FabioLuporini (#2283)
  • misc: Replace dimension check in pull_dims @EdCaunt (#2275)
  • misc: fix short/ushort codegen @mloubout (#2274)
  • mpi: Fix haloupdate with inner dim [v2] @FabioLuporini (#2272)
  • misc: fix UnboundTuple for None partile @mloubout (#2256)
  • compiler: Hotfix compare-ops @FabioLuporini (#2251)
  • compiler: Patch compare_ops for IndexDerivatives @FabioLuporini (#2250)
  • dsl: Patch domain decomposition bug with SubDomains @EdCaunt (#2246)
  • compiler: Patch symbolic coefficients over cross derivatives @FabioLuporini (#2248)
  • compiler: Patch custom coefficients @FabioLuporini (#2243)

Testing

  • CI: revamp parallel marker @mloubout (#2347)

Continuous Integration

  • docker: fix oneapi setup @mloubout (#2351)
  • ci: Update actions for nodejs version deprecation @georgebisbas (#2312)
  • deps: Update rocm version @mloubout (#2291)
  • compiler: Check DeviceFunctions for SubDimensions @EdCaunt (#2279)

Installation

  • pip prod(deps): update ipyparallel requirement from <8.8 to <8.9 @dependabot (#2346)
  • pip prod(deps): bump pyrevolve from 2.2.3 to 2.2.4 @dependabot (#2337)
  • pip prod(deps): update ipyparallel requirement from <8.7 to <8.8 @dependabot (#2324)
  • deps: prevent codecov error on local docker @mloubout (#2318)
  • pip prod(deps): update pytest requirement from <8.0,>=7.2 to >=7.2,<9.0 @dependabot (#2299)
  • deps: Update rocm version @mloubout (#2291)
  • deps: support python 3.12 @mloubout (#2270)
  • pip prod(deps): update anytree requirement from <=2.12.0,>=2.4.3 to >=2.4.3,<=2.12.1 @dependabot (#2268)
  • pip prod(deps): update anytree requirement from <=2.11.1,>=2.4.3 to >=2.4.3,<=2.12.0 @dependabot (#2249)
  • pip prod(deps): update anytree requirement from <=2.10.0,>=2.4.3 to >=2.4.3,<=2.11.1 @dependabot (#2241)

New Contributors

  • @rafael-fuente made their first contribution in https://github.com/devitocodes/devito/pull/2308
  • @ZoeLeibowitz made their first contribution in https://github.com/devitocodes/devito/pull/2223

Full Changelog: https://github.com/devitocodes/devito/compare/v4.8.3...v4.8.4

- Python
Published by github-actions[bot] about 2 years ago

devito - 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)

Documentation

  • Update FAQ.md @FabioLuporini (#2195)
  • documentation: update ci for new website setup @mloubout (#2221)

Compiler

  • compiler: prevent multisubdimension expressions duplicates @mloubout (#2230)
  • compiler: prevent reduction clause for perfect-enough outer loops @mloubout (#2226)
  • compiler: Rework multi-level buffering @FabioLuporini (#2225)
  • compiler: Fix issue 2194 @AndrewCheng827 (#2212)
  • compiler: prevent radius dependent temps for sparse operations @mloubout (#2216)
  • api: Cleanup and improve SubFunction @mloubout (#2198)
  • api: Revamp interpolation/injection @FabioLuporini (#2128)

πŸ› Bug Fixes

  • compiler: Patch cluster.is_sparse @FabioLuporini (#2232)
  • compiler: Fix reduction over sparse only @mloubout (#2220)
  • compiler: prevent temporary for local reductions @mloubout (#2218)
  • compiler: prevent radius dependent temps for sparse operations @mloubout (#2216)
  • compiler: fix arg processing for empty arg update @mloubout (#2213)
  • misc: various Dimension internal fixes @mloubout (#2205)

Continuous Integration

  • ci: add intel missing gpu drivers @mloubout (#2227)

Installation

  • pip prod(deps): update anytree requirement from <=2.9.0,>=2.4.3 to >=2.4.3,<=2.10.0 @dependabot (#2233)
  • deps: fix intel drivers @mloubout (#2228)
  • ci: add intel missing gpu drivers @mloubout (#2227)

Full Changelog: https://github.com/devitocodes/devito/compare/v4.8.2...v4.8.3

- Python
Published by mloubout over 2 years ago

devito - 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 equations @ofmla (#2173)

Compiler

  • compiler: Keep -qopenmp by default after icx 2023.2 @georgebisbas (#2164)
  • compiler: Add opkwargs property to ArgumentsMap @ccuetom (#2142)
  • compiler: Misc compiler fixes and improvements -- part II @FabioLuporini (#2138)
  • compiler: Pass operator arguments to downstream operators @ccuetom (#2139)
  • compiler: Improve lowering of IndexDerivatives @FabioLuporini (#2112)
  • compiler: Misc compiler tweaks and improvements @FabioLuporini (#2136)
  • compiler: Avoid generating collapse(1) @FabioLuporini (#2129)
  • compiler: Patch pickling of GuardFactor and reconstruction @FabioLuporini (#2126)
  • compiler: Introduce gpu-create parameter for buffers initialized on device @ccuetom (#2107)
  • compiler: Change tile use in DeviceAcczier to allow multiple tile sizes @gpc1064 (#2095)
  • compiler: Add host-*-pin handles; more volatile with pthreads @FabioLuporini (#2116)
  • compiler: Support template parameters @FabioLuporini (#2105)

MPI

  • mpi: Instrument compute0 core after specialising as ComputeCall @georgebisbas (#2143)
  • mpi: Enhance flexibility for custom topologies @georgebisbas (#2134)
  • mpi: Packed gathers and scatters @FabioLuporini (#2109)

GPU

  • compiler: Change tile use in DeviceAcczier to allow multiple tile sizes @gpc1064 (#2095)

Architectures and JIT

  • compiler: Enable AVX512 compiler support when available. @ggorman (#2184)
  • arch: Correct march to mcpu for ppc @raminammour (#2174)
  • misc: Add deviceid to configuration and enhance switchconfig @ccuetom (#2175)
  • arch: Add ICX support @georgebisbas (#2051)

πŸ› Bug Fixes

  • dsl: Removed dynamic classes for AbstractFunctions @FabioLuporini (#2190)
  • dsl: Prevent aggregation for symbolic coefficients @mloubout (#2182)
  • api: Prevent factorization for symbolic coefficients @mloubout (#2179)
  • compiler: Prevent Eq dims to be lost if only implicit @mloubout (#2169)
  • compiler: Fix non-arithmetic distances @mloubout (#2165)
  • compiler: Prevent adding breaking guard to nokey @mloubout (#2160)
  • compiler: Add guards to prevent OOB when streaming buffers with ConditionalDimension @ccuetom (#2150)
  • compiler: Fix CondDim's factor auto-override @FabioLuporini (#2154)
  • compiler: Fix pickling of aliasing SparseFunction @FabioLuporini (#2148)
  • compiler: Revert "compiler: Relax WaitLock regions in a ScheduleTree" @FabioLuporini (#2141)
  • compiler: Patch pickling of GuardFactor and reconstruction @FabioLuporini (#2126)
  • compiler: Fix OpenMP reductions in tandem with linearize=True @FabioLuporini (#2117)

Testing

  • misc: fix openmp= deprecation @mloubout (#2186)
  • Removing AWS ondemand gh-runners from CI @ggorman (#2155)

Continuous Integration

  • CI: pytest setup fix @mloubout (#2177)
  • docker: add some tweaks to Nvidia docker @mloubout (#2171)
  • CI: Fix asv setup @mloubout (#2167)
  • CI: Fix asv devito install @mloubout (#2166)
  • ci: Add python 3.11 and minor CI fixing @georgebisbas (#2158)
  • docker: revamp base deployment @mloubout (#2162)
  • ci: switch to concurrency settings rather than extra action @mloubout (#2119)

Installation

  • docker: Add intel advisor to icx image @mloubout (#2180)
  • docker: Add some tweaks to nvidia docker @mloubout (#2171)
  • docker: Switch to intelpython for icc/icx build @mloubout (#2172)
  • docker: Revamp base deployment @mloubout (#2162)
  • pip prod(deps): update distributed requirement from <2023.7 to <2023.8 @dependabot (#2161)
  • pip prod(deps): update anytree requirement from <=2.8,>=2.4.3 to >=2.4.3,<=2.9.0 @dependabot (#2152)
  • pip prod(deps): update distributed requirement from <2023.6 to <2023.7 @dependabot (#2145)
  • pip prod(deps): update distributed requirement from <2023.5 to <2023.6 @dependabot (#2127)
  • deps: sympy 1.12 compat @mloubout (#2123)
  • pip prod(deps): update distributed requirement from <2023.4 to <2023.5 @dependabot (#2118)
  • reqs: Move pyrevolve to optionals and introduce testing-only reqs @georgebisbas (#2096)
  • reqs: Fix for matplotlib >=3.6.3 @georgebisbas (#2047)
  • install: Make mpi4py portable across Intel and AMD @FabioLuporini (#2115)
  • install: Overhaul Dockerfile.amd for MPI support @FabioLuporini (#2104)
  • pip prod(deps): update distributed requirement from <2023.4 to <2023.5 @dependabot (#2110)
  • pip prod(deps): update ipyparallel requirement from <8.6 to <8.7 @dependabot (#2106)

New Contributors

  • @gpc1064 made their first contribution in https://github.com/devitocodes/devito/pull/2095
  • @raminammour made their first contribution in https://github.com/devitocodes/devito/pull/2174

Full Changelog: https://github.com/devitocodes/devito/compare/v4.8.1...v4.8.2

- Python
Published by github-actions[bot] almost 3 years ago

devito - 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 markoverlappable @FabioLuporini (#2069)

Architectures and JIT

  • compiler: only use offloading flags for amd gpu not cpu @mloubout (#2087)
  • arch: Support aws graviton @mloubout (#2080)

πŸ› Bug Fixes

  • compiler: Patch loop nests a-la PrecomputedInterpolation @FabioLuporini (#2102)
  • compiler: Prevent topofusion of homogeneous sync Clusters @FabioLuporini (#2099)
  • compiler: Patch local-SubDim heuristic for blocking @FabioLuporini (#2093)
  • compiler: Fix and improve MIN/MAX codegen @FabioLuporini (#2076)
  • symbolics: evaluate transpose on elements of tensors in case of deriv… @mloubout (#2072)
  • compiler: Handle IndexedBase DDA across Jumps/Barriers @FabioLuporini (#2070)

Testing

  • tests: Fix warnings @georgebisbas (#2079)

Continuous Integration

  • ci: make aws ci parallel @mloubout (#2085)
  • tests: Fix warnings @georgebisbas (#2079)
  • arch: Support aws graviton @mloubout (#2080)

Installation

  • pip prod(deps): update ipyparallel requirement from <8.5 to <8.6 @dependabot (#2090)
  • docker: Updating AMD dockerfile to use Ubuntu 22.04. @ggorman (#2084)
  • pip prod(deps): update distributed requirement from <2023.3 to <2023.4 @dependabot (#2074)

- Python
Published by github-actions[bot] over 3 years ago

devito - 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

  • docs: Update compiler summary image @georgebisbas (#2037)
  • misc: Update docker/README.md @FabioLuporini (#1972)
  • Update FAQ.md @FabioLuporini (#2010)
  • misc: Add FAQ page (lifted from the wiki) @FabioLuporini (#1976)

Compiler

  • compiler: Patch data dependencies across Jumps @FabioLuporini (#2065)
  • compiler: Implement graceful lowering of derivatives (aka "unexpansion") @FabioLuporini (#2060)
  • compiler: Switch from aomp to clang for amd @mloubout (#2058)
  • compiler: Extensions for parlang backends @FabioLuporini (#2042)
  • compiler: Introduce int32 mode @FabioLuporini (#2041)
  • compiler: Support shared memory in parlang backends @FabioLuporini (#2025)
  • compiler: support for HPE Cray Clang compiler @georgebisbas (#2029)
  • compiler: Better blocking heuristics and revamped linearization @FabioLuporini (#2020)
  • compiler: Further misc improvements @FabioLuporini (#2012)
  • compiler: Misc refactorings towards serialization support @FabioLuporini (#2009)
  • Misc code generation improvements @FabioLuporini (#2001)
  • compiler: Misc code generation fixes @FabioLuporini (#1994)
  • compiler: Misc tweaks for backend-portable code generation @FabioLuporini (#1984)

MPI

  • return slice(0,-1) for glbslices if glbnumb empty on an mpi rank @deckerla (#2004)
  • mpi: Fix data distribution bugs [part 2] @rhodrin (#1949)
  • compiler: Fix MPI mode diag2 does not need a MPIRegion @mmohrhard (#1992)

Architectures and JIT

  • arch: Add gcc 12 into legal configurations @ziyiyin97 (#2027)

πŸ› Bug Fixes

  • compiler: Add cluster guard to AliasKey for safety @mloubout (#2045)
  • dependencies: sympy 1.11 compatibility @mloubout (#2005)
  • ci: Add Arm skip option to tests @mloubout (#2035)
  • compiler: Ensure order invariance of candidates in ReducerMap.unique @ccuetom (#2033)
  • compiler: Fix subdim argument mismatch @mloubout (#2019)
  • symbolics: Fix absolute value warning for integer input @mloubout (#2018)
  • types: Minor fixes to sparse function indices and implicit dims @mloubout (#2011)
  • compiler: Patch placement of ConditionalDimension with multi-Dimension conditions @FabioLuporini (#2008)
  • compiler: Prevent reordering of existing temps in CSE @mloubout (#2002)
  • return slice(0,-1) for glbslices if glbnumb empty on an mpi rank @deckerla (#2004)
  • mpi: Fix data distribution bugs [part 2] @rhodrin (#1949)
  • dsl: Patched cross-derivative fd_order bug @EdCaunt (#1988)
  • compiler: Check jit_dir existence when saving @GlassOfWhiskey (#1983)

Testing

  • ci: Remove docker pruning from pytest-gpu @FabioLuporini (#2013)

Continuous Integration

  • docker: add AMD HIP build to base docker @mloubout (#2055)
  • CI: switch macos runner to latest gcc version @mloubout (#2046)
  • ci: improve accuracy of codecov. @ggorman (#2040)
  • ci: Streamlining @ggorman (#2028)
  • ci: Remove dangling docker layers @FabioLuporini (#2017)

Installation

  • pip prod(deps): update distributed requirement from <2023.2 to <2023.3 @dependabot (#2063)
  • compiler: Switch from aomp to clang for amd @mloubout (#2058)
  • docker: Switch to rocm 4.5.2 @mloubout (#2057)
  • docker: add AMD HIP build to base docker @mloubout (#2055)
  • pip prod(deps): update distributed requirement from <2022.13 to <2023.2 @dependabot (#2048)
  • dependencies: sympy 1.11 compatibility @mloubout (#2005)
  • pip prod(deps): update distributed requirement from <2022.12 to <2022.13 @dependabot (#2039)
  • pip prod(deps): update distributed requirement from <2022.11 to <2022.12 @dependabot (#2031)
  • pip prod(deps): update py-cpuinfo requirement from <=8 to <10 @dependabot (#2026)
  • misc: Add packages to Docker base images @FabioLuporini (#2030)
  • pip prod(deps): update distributed requirement from <2022.10 to <2022.11 @dependabot (#2021)
  • pip prod(deps): update distributed requirement from <2022.9 to <2022.10 @dependabot (#1996)
  • pip prod(deps): update distributed requirement from <2022.8 to <2022.9 @dependabot (#1987)

- Python
Published by github-actions[bot] over 3 years ago

devito - v4.7.1

Changes

Continuous Integration

  • docker: fix deployment condition @mloubout (#1985)

- Python
Published by github-actions[bot] almost 4 years ago

devito - 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 @georgebisbas (#1923)
  • examples: Use solve instead of by hand derivation @mloubout (#1879)
  • examples: Rename the viscoacoustic equations @nogueirapeterson (#1869)
  • examples: Update attribute names and backend for synthetics notebook @EdCaunt (#1895)
  • examples: Add colab/wsl dependencies to gempy notebook @EdCaunt (#1866)
  • Fix 2D Gzz when sintheta==0 @mloubout (#1855)

Documentation

  • misc: Documentation tweaks @FabioLuporini (#1853)
  • misc: Add citation button @georgebisbas (#1848)

Compiler

  • compiler: Generalize lowering of reductions @FabioLuporini (#1980)
  • compiler: Restructure basic.Object sub-hierarchy @FabioLuporini (#1977)
  • compiler: Infer type generation from Cctype @FabioLuporini (#1971)
  • compiler: Reuse twin elemental functions @FabioLuporini (#1967)
  • compiler: Support for MPI+CUDA @FabioLuporini (#1965)
  • compiler: Remove IndexedData.free_symbols hack @FabioLuporini (#1958)
  • compiler: Decouple pthreading pass from orchestration @FabioLuporini (#1938)
  • compiler: Inception of two-stage derivative evaluation @FabioLuporini (#1893)
  • compiler: Misc compiler improvements @FabioLuporini (#1912)
  • compiler: Uncache data carriers @FabioLuporini (#1913)
  • compiler: Misc minor code generation fixes @FabioLuporini (#1891)
  • compiler: Minor FD refactorings @FabioLuporini (#1875)
  • compiler: Minor blocking.py refactorings @georgebisbas (#1845)
  • compiler: Avoid generating unnecessary conditionals @FabioLuporini (#1880)
  • compiler: Move derivative.evaluate @FabioLuporini (#1872)
  • compiler: Drop unnecessary check_indices @FabioLuporini (#1871)
  • compiler: Add GuardOverflow @FabioLuporini (#1870)
  • compiler: Flip par-tile unrolling @FabioLuporini (#1868)
  • compiler: Relax Data.array_finalize to work with subclasses @FabioLuporini (#1865)
  • compiler: Add SEPARABLE property @FabioLuporini (#1840)

MPI

  • mpi: Fix data distribution bugs [part 1] @rhodrin (#1947)
  • mpi: Always generate MPIComm with MPI enabled @FabioLuporini (#1905)
  • mpi: Do not send padding region when doing pythonland halo exchange @tjb900 (#1874)

GPU

  • install: Create scheduled base docker images for better build @mloubout (#1946)
  • [gpu] Update to HPC SDK 22.2 and CUDA 11.6 @kenhester (#1842)

Architectures and JIT

  • arch: Support OpenMP on Apple M1 @mloubout (#1931)
  • compiler: Drop ARM specialization @FabioLuporini (#1882)
  • arch: Fix CustomCompiler instantiation @AtilaSaraiva (#1850)
  • arch: Add lineinfo compiler flag @FabioLuporini (#1849)

πŸ› Bug Fixes

  • compiler: Patch premature lowering of EvalDerivative @FabioLuporini (#1979)
  • mpi: Fix data distribution bugs [part 1] @rhodrin (#1947)
  • api: Fix Derivative substitution @mloubout (#1942)
  • compiler: Patch fission (issue 1921) @FabioLuporini (#1922)
  • compiler: Patch buffer initialization @FabioLuporini (#1916)
  • compiler: Patch generate_implicit for corner cases @FabioLuporini (#1910)
  • compiler: Patch race conditions due to storage-related dependencies @FabioLuporini (#1903)
  • compiler: Patch iteration space scheduling @FabioLuporini (#1898)
  • compiler: Fix guards fusion @FabioLuporini (#1883)
  • compiler: Do not evaluate unevaluable expressions @mloubout (#1878)
  • compiler: Patch norm accumulation @FabioLuporini (#1864)
  • compiler: Patch norm enforcing double precision accumulation @FabioLuporini (#1861)
  • compiler: Use long, not unsigned int, for linearization @FabioLuporini (#1841)

Benchmarking

  • compiler: Add blockrelax tests and refresh advisor profiling @georgebisbas (#1929)

Testing

  • tests: Refactor conftest skipif names @georgebisbas (#1960)
  • install: Create scheduled base docker images for better build @mloubout (#1946)
  • tests: Add MFE for issue 1753 @georgebisbas (#1873)
  • CI: prevent conflict with pytest @mloubout (#1844)

Continuous Integration

  • install: Update to intel-oneapi-mpi-devel @georgebisbas (#1961)
  • install: Create scheduled base docker images for better build @mloubout (#1946)
  • ci: Hotfix for actions-gh-pages @georgebisbas (#1937)
  • ci: Hotfix actions-gh-pages @georgebisbas (#1936)
  • ci: Update several GitHub actions versions @georgebisbas (#1934)

Installation

  • install: Patch Dockerfile.nvidia @FabioLuporini (#1975)
  • docker: Fix docker tags for publish @mloubout (#1982)
  • install: Add more base images to Docker.nvidia @FabioLuporini (#1974)
  • install: Reinstate libgl1-mesa-glx @georgebisbas (#1966)
  • install: Add lib/intel64_lin @georgebisbas (#1963)
  • install: Refactor Intel paths @georgebisbas (#1962)
  • pip prod(deps): update ipyparallel requirement from <8.4 to <8.5 @dependabot (#1945)
  • pip prod(deps): update distributed requirement from <2022.7 to <2022.8 @dependabot (#1955)
  • install: Create scheduled base docker images for better build @mloubout (#1946)
  • docker: Hotfix Dockerfile.nvidia @georgebisbas (#1940)
  • gpu: Update to HPC 22.3, reduced image size @kenhester (#1918)
  • pip prod(deps): update distributed requirement from <2022.6 to <2022.7 @dependabot (#1935)
  • deps: Drop deprecated distutils imports @georgebisbas (#1899)
  • pip prod(deps): update distributed requirement from <2022.5 to <2022.6 @dependabot (#1917)
  • pip prod(deps): update distributed requirement from <2022.4 to <2022.5 @dependabot (#1894)
  • CI-Docker: Publish CPU image with tag latest @navjotk (#1890)
  • pip prod(deps): update distributed requirement from <2022.3 to <2022.4 @dependabot (#1884)
  • sympy: new version compat @mloubout (#1858)
  • install: Fix cflag for nvidia mpi4py @mloubout (#1854)
  • install: Fix EOL typo @mloubout (#1852)
  • Installation: update setup.py and cleanup docker files @mloubout (#1847)
  • pip prod(deps): update distributed requirement from <=2022.2 to <2022.3 @dependabot (#1851)

- Python
Published by github-actions[bot] almost 4 years ago

devito - 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)

- Python
Published by github-actions[bot] over 4 years ago

devito - 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 ttipurewave_eq tutorial @ofmla (#1779)
  • examples: Add ttipurewave_eq tutorial @ofmla (#1752)

Compiler

  • compiler: CUDA/HIP/SYCL preliminaries + misc improvements @FabioLuporini (#1819)
  • compiler: Refactorings, simplifications, generalizations @FabioLuporini (#1810)
  • compiler: gpu cc detection fix @georgebisbas (#1814)
  • compiler: Evaluate MIN/MAX expressions with assumptions @georgebisbas (#1798)
  • compiler: Move lambda level to IncrDimension property @georgebisbas (#1793)
  • compiler: Further minor tweaks @FabioLuporini (#1796)
  • compiler: Nested indexification @mloubout (#1789)
  • compiler: Minor patches @FabioLuporini (#1784)
  • compiler: Make Injection/Interpolation part of sympy hierarchy @FabioLuporini (#1782)
  • compiler: Refactor subdomain hierarchy @FabioLuporini (#1781)
  • compiler: Enable specialization of Function.data @FabioLuporini (#1778)
  • compiler: Add evalmin, evalmax utilities @georgebisbas (#1777)
  • compiler: Simplifications @FabioLuporini (#1773)

MPI

  • mpi: Fix mask ordering for sparse gather @mloubout (#1824)
  • mpi: Add MPI support for python3.9 @georgebisbas (#1790)

GPU

  • gpu: move blocking pass from custom to advanced mode @italoaug (#1818)
  • gpu: gpu cc detection fix @georgebisbas (#1814)
  • gpu: add nvidia gpu compute capability auto-detection @georgebisbas (#1803)
  • gpu: Loop tiling for GPU @italoaug (#1801)
  • gpu, compiler: Update HPC SDK 21.9 @kenhester (#1765)

Architectures and JIT

  • arch: Support OSX+M1 @FabioLuporini (#1822)
  • compiler: add nvidia gpu compute capability auto-detection @georgebisbas (#1803)

πŸ› Bug Fixes

  • examples: Change stability testing sizes to avoid domain overlap with MPI @mloubout (#1772)
  • compiler: Fixes #1695 by prioritising innermost vectorizable candidates @georgebisbas (#1697)

Continuous Integration

  • ci: Update codecov action version @mloubout (#1825)
  • ci: Fix OSX setup in tutorials @mloubout (#1807)
  • ci: Use conda with python 3.8 (defaults to 3.10 otherwise) @FabioLuporini (#1775)

Installation

  • misc: Add requirements.txt and requirements-optional.txt to MANIFEST.in @hmeiland (#1835)
  • reqs: version check for distributed @georgebisbas (#1830)
  • pip prod(deps): update distributed requirement from <2021.13 to <2022.2 @dependabot (#1821)
  • pip prod(deps): update distributed requirement from <2021.12 to <2021.13 @dependabot (#1805)
  • ci: Add python 3.10, gcc-10 option @georgebisbas (#1795)
  • pip prod(deps): update distributed requirement from <2021.11 to <2021.12 @dependabot (#1794)
  • reqs: Extend SymPy support to 1.9 @mloubout (#1786)
  • pip prod(deps): update distributed requirement from <2021.10 to <2021.11 @dependabot (#1785)
  • install: Align docker for cpu and nvidia @hmeiland (#1758)

- Python
Published by github-actions[bot] over 4 years ago

devito - 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 @georgebisbas (#1731)
  • compiler: Introduce linearization pass @FabioLuporini (#1727)
  • compiler: Introducing min/max bounds to replace 'bf' elemental functions @georgebisbas (#1673)

MPI

  • mpi: Speedup indexglbto_loc @FabioLuporini (#1748)
  • mpi: Mitigate SparseFunction setup costs @mloubout (#1720)

GPU

  • compiler: Add optimization option to fuse WithLocks tasks @FabioLuporini (#1736)

πŸ› Bug Fixes

  • mpi: Patch neighborhood construction @FabioLuporini (#1768)
  • compiler: Patch SubDomainSet with NVC @FabioLuporini (#1767)
  • compiler: Patch and improve SubDomainSet @FabioLuporini (#1762)
  • compiler: Fix zero to zero slices @rhodrin (#1757)
  • bench: Patch jacobian operators + MPI (see issue #1744) @FabioLuporini (#1745)

Benchmarking

  • bench: Patch jacobian operators + MPI (see issue #1744) @FabioLuporini (#1745)
  • bench: Add warmup option to run mode @FabioLuporini (#1742)

Continuous Integration

  • ci: Update Ubuntu versions @rhodrin (#1759)

Installation

  • install: Udpate to HPCSDK 21.7, Update to Jupyter>=3.0 @FabioLuporini (#1760)
  • pip prod(deps): update distributed requirement from <2021.9 to <2021.10 @dependabot (#1749)
  • pip prod(deps): update distributed requirement from <2021.8 to <2021.9 @dependabot (#1737)
  • reqs: enforce pip>=21.1.2 for conda env installation @georgebisbas (#1734)
  • reqs: pip new file arg format @georgebisbas (#1733)

Misc

  • misc: git ignore *.npy files @georgebisbas (#1729)

- Python
Published by github-actions[bot] almost 5 years ago

devito - 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 gempy import in tutorial notebook @EdCaunt (#1704)
  • examples: Add notebook for creating seismic synthetics with gempy @EdCaunt (#1643)
  • examples: Tweak LSRTM_acoustic notebook @rabreucristo (#1698)
  • examples: Add LSRTM acoustic notebook @rabreucristo (#1574)

Compiler

  • compiler: Revamp CIRE exploiting EvalDerivative @FabioLuporini (#1688)
  • compiler: Improve derivative factorization pass @FabioLuporini (#1657)

MPI

  • mpi: Towards compatibility for mode!=basic and GPU @FabioLuporini (#1721)
  • mpi: Patch MPI cleanup @FabioLuporini (#1712)

GPU

  • gpu: Enable tile clause in place of collapse with OpenACC @FabioLuporini (#1703)
  • gpu: HPC SDK 21.5, Singularity, HPCX MPI update @kenhester (#1709)
  • gpu: Set device on pthreads @FabioLuporini (#1716)
  • compiler: Revamp data streaming @FabioLuporini (#1702)
  • gpu: Fix offloading when zero-size arrays @FabioLuporini (#1684)
  • gpu: Patch selection of streamed TimeFunctions @FabioLuporini (#1683)
  • gpu: Enable tile clause in place of collapse with OpenACC @FabioLuporini (#1703)

πŸ› Bug Fixes

  • compiler: Revamp data streaming @FabioLuporini (#1702)
  • API: fixed callback of PrecomputedInterpolator injection @ccuetom (#1691)

Benchmarking

  • bench: Patch jacobian_adjoint @FabioLuporini (#1718)
  • bench: prevent zero input for jacobian @mloubout (#1713)
  • bench: Fix gflopss dumping @FabioLuporini (#1705)
  • bench: Allow asv workflow to discover new benchmarks @rhodrin (#1689)
  • bench: Fix asv new benchmark issue @rhodrin (#1686)

Testing

  • tests: Patch expected output for ipython==7.23.0 @FabioLuporini (#1687)
  • tests: Add optimizations to linalg examples @georgebisbas (#1529)

Continuous Integration

  • ci: Stop including tutorial notebooks in codecov @EdCaunt (#1694)
  • Allow asv workflow to discover new benchmarks @rhodrin (#1689)
  • bench: Fix asv new benchmark issue @rhodrin (#1686)
  • Update release-drafter.yml @FabioLuporini (#1685)

Misc

  • misc: Fix clear-cache script @FabioLuporini (#1679)

Installation

  • pip prod(deps): update distributed requirement from <2021.7 to <2021.8 @dependabot (#1722)
  • pip prod(deps): update distributed requirement from <2021.6 to <2021.7 @dependabot (#1701)
  • pip prod(deps): update distributed requirement from <2021.5 to <2021.6 @dependabot (#1693)

- Python
Published by github-actions[bot] almost 5 years ago

devito - 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 memfreeargs @FabioLuporini (#1612)
  • compiler: Fix ScheduleTree construction in presence of guards and/or syncs @FabioLuporini (#1611)
  • misc: Patch ThreadID pickling @FabioLuporini (#1606)
  • compiler: Patch issue #1592 (HaloScheme with time subdimensions) @Leitevmd (#1597)
  • dsl: Patch symbolic coefficients with staggered grids @EdCaunt (#1595)
  • Fix find_library issue to MacOS Big Sur @speglich (#1584)
  • Fix hierarchical blocking + parallelism @FabioLuporini (#1580)
  • BoundSymbol constructor to be cached @mloubout (#1576)

Compiler

  • compiler: Tweak nested-par candidate condition @georgebisbas (#1669)
  • compiler: Singletonize special symbols (e.g. nthreads) @FabioLuporini (#1650)
  • misc: Drop unused backend infrastructure @FabioLuporini (#1632)
  • compiler: Improve aliases detection, processing, and optimization @FabioLuporini (#1631)
  • mpi: Add diag2 mode @FabioLuporini (#1630)
  • compiler: Add skewing pass towards Temporal Blocking @georgebisbas (#1620)
  • misc: Use pickled soname rather than generating a new one @FabioLuporini (#1605)
  • compiler: Add option to use Functions, in place of Arrays, for compiler-generated temporary @FabioLuporini (#1591)
  • compiler: Improve the cost model used by CIRE @FabioLuporini (#1585)
  • Refactor Array sharing @FabioLuporini (#1583)
  • Refactor Operator hierarchy @FabioLuporini (#1573)
  • Introduce devito/arch @FabioLuporini (#1563)
  • operator: Use FD-Gpts/s instead of Gpts/s @georgebisbas (#1544)

API

  • sympy: Support v1.8 @mloubout (#1549)
  • compiler: Check consistency between shape and grid for TimeFunction, too @tjb900 (#1667)
  • dsl: Add MatrixSparseTimeFunction to support multi-point sources @FabioLuporini (#1603)
  • dsl: Enable overriding over SubDimension thickness @FabioLuporini (#1608)
  • Shift argument as a tuple @Leitevmd (#1561)
  • BoundSymbol constructor to be cached @mloubout (#1576)
  • gpu: Add devicerm API for conditional deletions @FabioLuporini (#1571)
  • Introduce deviceid API to offload Operators on specific GPUs @FabioLuporini (#1569)

Examples

  • advisor: merge roofline and json @georgebisbas (#1649)
  • examples: TTI 1st order operators @ofmla (#1602)
  • examples: Add viscoacoustic Born operator to 2nd sls equation @nogueirapeterson (#1617)
  • examples: Born approximation for TTI media @ofmla (#1555)
  • examples: add first order adjoint viscoacoustic equations @nogueirapeterson (#1567)
  • Tutorials: add shift parameter to Ren visco-acoustic equation @nogueirapeterson (#1562)

Documentation

  • Bump static release number @FabioLuporini (#1564)

MPI

  • compiler: Check consistency between shape and grid for TimeFunction, too @tjb900 (#1667)
  • mpi: Add diag2 mode @FabioLuporini (#1630)
  • mpi: Add ability to specify MPI topology used for grid division @FabioLuporini (#1604)
  • mpi: Prevent double finalization with devito used as a lib @FabioLuporini (#1609)
  • mpi: Pass MPICOMMSELF to Distributor upon unpickling @FabioLuporini (#1607)

GPU

  • gpu: Fixup prefetch jitting when using extra symbols @FabioLuporini (#1678)
  • gpu: Update Dockerfile.nvidia to HPC SDK 21.3 @kenhester (#1659)
  • gpu: Fix leaks due to excessive fetching/prefetching @FabioLuporini (#1658)
  • gpu: Add gpu-fit value for all functions (fix #1642) @Leitevmd (#1645)
  • compiler: Work around clang[10,11,?] omp-offloading bug @FabioLuporini (#1634)
  • arch: Review getgpuinfo @Leitevmd (#1626)
  • misc: Updating to NVIDIA HPC SDK 21.2 @kenhester (#1594)
  • compiler: Target gpu for PGI openacc @Leitevmd (#1587)
  • arch: Add nvidia-smi parser to GPU checking @Leitevmd (#1615)
  • gpu: Updated Dockerfile.nvidia to HPC SDK 21.1 @kenhester (#1593)
  • gpu: Add devicerm API for conditional deletions @FabioLuporini (#1571)
  • Data streaming support with OpenMP offloading @FabioLuporini (#1556)

Testing

  • ci: Modify mpi-example workflow and update docker actions @rhodrin (#1664)
  • ci: Switch to default gcc(9.3) for conda build @mloubout (#1651)
  • ci: Fix conda build @mloubout (#1648)
  • ci: Update Ci-gpu for nvidia openmp @Leitevmd (#1635)
  • ci: Work around archives missing error on apt install @FabioLuporini (#1623)
  • ci: Transfer gpu workflow to self-hosted runners @rhodrin (#1618)
  • ci: Separate adjoint based tests @rhodrin (#1572)

- Python
Published by github-actions[bot] about 5 years ago

devito - 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 lowerstepping_dims @Leitevmd (#1504)
  • Fix custom coefficients on staggered grids @EdCaunt (#1497)
  • Tensor grid fixup @mloubout (#1489)
  • Patch issue #1477 @FabioLuporini (#1488)
  • Patch compilation time @FabioLuporini (#1487)
  • Conditonals: Added diff2sympy to conditionals @EdCaunt (#1475)
  • Minor tweaks @FabioLuporini (#1469)
  • Fix SubDomainSet bug @rhodrin (#1457)
  • Function globabl size method @rhodrin (#1499)
  • Fix parallel increments @FabioLuporini (#1446)
  • fix misspelling of openmp-targets for amdgcn-amd-amdhsa @paklui (#1429)
  • examples: Fix opt arg-passing for elastic and TTI @georgebisbas (#1425)

API

  • FD: add missing shift option @Leitevmd (#1551)
  • Refactor and enhance section profiling @FabioLuporini (#1547)
  • GPU data streaming @FabioLuporini (#1520)
  • builtins: initialize FD halo @mloubout (#1511)
  • Fix custom coefficients on staggered grids @EdCaunt (#1497)
  • Tensor grid fixup @mloubout (#1489)
  • Added origin_map attribute to Grid @EdCaunt (#1461)
  • Tensor API: improve behavior and interleaving with sympy. @mloubout (#1390)

Examples

  • Example: add second-order viscoacoustic equations @nogueirapeterson (#1406)
  • Updated cavity flow notebook for cfd examples @kmn319 (#1502)
  • Notebooks with Damping, PML and HABC absorbing boudary conditions. @felipeaugustogudes (#1323)
  • Examples: Add tests and damp safety checks for backward compatibility @mloubout (#1434)
  • Move time block notebook to seismic/tutorials @jkwashbourne (#1441)
  • examples: Fix opt arg-passing for elastic and TTI @georgebisbas (#1425)
  • Time Blocking Notebook POC w/serialization and compression @jkwashbourne (#1424)
  • examples: Patch plot_velocity @FabioLuporini (#1428)
  • Self-adjoint seismic: Update correctness linearization plot @jkwashbourne (#1423)

Documentation

  • Correct typo in examples/cfd/03_diffusion.ipynb @jakubbober (#1451)
  • Replaced mini-web-app for slack invites to slacks native solution. @ggorman (#1439)

MPI

  • builtins: initialize FD halo @mloubout (#1511)
  • Fix halo update hoisting @Leitevmd (#1494)
  • Fixup hoisthalospots @FabioLuporini (#1496)
  • Fixup drophalospots @FabioLuporini (#1495)
  • Outhalo size warning @rhodrin (#1493)
  • Fixing halo spot merge rule (issue 1459) @Leitevmd (#1482)
  • MPI + OpenMP 5.0 @italoaug (#1363)
  • mpi data gatherer @rhodrin (#1376)

GPU

  • Skip viscoacoustic tests with openacc @rhodrin (#1559)
  • GPU data streaming @FabioLuporini (#1520)
  • Use ompsetdefault_device for OpenMP GPU offloading @italoaug (#1517)
  • Tidy gpu CI workflow @rhodrin (#1470)
  • Fix MPI in Dockerfile.nvidia @kenhester (#1492)

Testing

  • Skip viscoacoustic tests with openacc @rhodrin (#1559)
  • Tweak ASV and GPU workflows @rhodrin (#1558)
  • docker publish tweaks @rhodrin (#1548)
  • Docker workflow updates @rhodrin (#1546)
  • CI: Update gpu workflow @rhodrin (#1542)
  • Migrate asv workflow to new runner @rhodrin (#1530)
  • Move mpi examples to new runner @rhodrin (#1543)
  • Migrate MPI CI @rhodrin (#1531)
  • Add test that compares gradient equivalence @navjotk (#1519)
  • ci: Disable dask tutos on OSX build @FabioLuporini (#1505)
  • CI: skip dask on osc builds @mloubout (#1458)

Misc

  • Update distributed requirement to <2021.2 @dependabot (#1557)
  • Improve bitwise reproducibility @ggorman (#1438)
  • Update to NVidia HPC 20.9; MPI Fixes @kenhester (#1526)
  • perf: Add global gflopss to operator log @georgebisbas (#1462)
  • Advisor miscellaneous improvements @georgebisbas (#1503)
  • Updated dependencies in Dockerfile.nvidia: HPC SDK 20.9, cupy110 @kenhester (#1484)
  • Improve detection and scheduling of CIREs @FabioLuporini (#1465)
  • Intel Advisor jupyter notebook benchmarks/user/advisor scripts update @jack-lascala (#1456)
  • Added sniffing Intel MPI as MPI version in compiler.py @jack-lascala (#1455)
  • Moving and packaging the Intel Advisor 2020 scripts into benchmarks/user/advisor @jack-lascala (#1452)
  • Moved from PGI to HPC SDK. New NVIDIA Based-Container. @kenhester (#1450)
  • Intel Advisor 2020 automatic roofline tools @jack-lascala (#1440)
  • Potentially smarter CIRE via cire-rotate option @FabioLuporini (#1430)
  • Update pytest requirement from to >=3.6,<7.0 @dependabot (#1414)

- Python
Published by github-actions[bot] over 5 years ago

devito - 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 (#1402)
  • MPI minor bug fixes @rhodrin (#1408)
  • mac notebook fix @rhodrin (#1407)
  • Run docker test @mloubout (#1398)
  • docker: fix typos @mloubout (#1397)
  • compiler: version checks avoid unreliable exception @dbowman-ion (#1386)
  • Fix cross-loop blocking with imperfect nests @FabioLuporini (#1381)
  • Cancel previous CI at new commit @mloubout (#1378)
  • Heapification of temporaries @FabioLuporini (#1349)
  • Fix missing halo exchange over invariants fields @FabioLuporini (#1359)
  • tutorials: 00_index fix broken link @georgebisbas (#1356)
  • CI: add autolog of PRs @mloubout (#1338)

πŸ› Bug Fixes

  • Fix issue #1298 @FabioLuporini (#1421)
  • ir: Fix lowering of ConditionalDimension @FabioLuporini (#1419)
  • mpi: Patch computelocindices + test @FabioLuporini (#1416)
  • Fix estimate_cost @FabioLuporini (#1405)
  • Fix issue 1332 (fablup version) @FabioLuporini (#1389)
  • checkpointing: set right size_ckp @ofmla (#1361)
  • Data tweaks @rhodrin (#1369)
  • Fix min storage @FabioLuporini (#1372)
  • Avoid dererencing dangling pointers on GC'd objects @tjb900 (#1316)
  • Replace subdimension in expressions @mloubout (#1345)
  • Indexify with non-symbolic numeric indices @mloubout (#1343)
  • Fix numeric indices @mloubout (#1341)

API

  • Buffer: remove unused from args to allow multi buffers @mloubout (#1420)
  • operator: Expose more opt knobs to the user level @FabioLuporini (#1387)
  • Function/Expr shift utility @mloubout (#1377)
  • Prevent sympy cache blowup @mloubout (#1366)
  • Symbolic speedup @mloubout (#1362)

Examples

  • examples: fix issue #1393 @ofmla (#1400)
  • tutorials: add missing ignore tag in dask tutorial @mloubout (#1403)
  • Dask tutorial with operator created only once @ofmla (#945)
  • tests: Fix args and test viscoacoustic @georgebisbas (#1365)
  • Add norm asserts for ssa iso notebooks @jkwashbourne (#1373)
  • Make dt a solve property to use latest model parameters @mloubout (#1371)
  • examples: Drop unnecessary NBVALs @FabioLuporini (#1367)
  • Refine CFL condition in seismic @mloubout (#1348)
  • Freesurface with subdomain (iso-acoustic) @mloubout (#1344)
  • Improve solve speed for complicated equations @mloubout (#1342)
  • elastic-fix @mloubout (#1339)

Documentation

  • tutos: Inception of performance modes notebook @georgebisbas (#1358)
  • Fix issue 1185 @dabiged (#1360)
  • ConditionalDimensions notebook @georgebisbas (#1269)
  • Add binder directory with requirements.txt including matplotlib @jkwashbourne (#1351)

MPI

  • ci: Test all critical seismic examples with MPI @FabioLuporini (#1418)
  • Single precision interpolation @mloubout (#1413)
  • Update halo warning @rhodrin (#1370)
  • Fix MPI benchmark json results @jaimesouza (#1295)
  • Improve detection of redundant halo exchanges @FabioLuporini (#1352)

GPU

  • Add MPI+GPU runs to CI @georgebisbas (#1251)
  • Tweak CIRE for GPUs @FabioLuporini (#1409)
  • Add docker publish @mloubout (#1388)
  • Nvidia dockerfile @FabioLuporini (#1392)
  • Tool getgpuinfo (using lshw, lspci) with test @jack-lascala (#1383)

Contributors

Many thanks to all the contributors to this release (last surname alphabetical order):

  • George Bisbas (Imperial College London)
  • David Bowman (ION)
  • Tim Burgess (DUG)
  • Jaime Freire de Souza
  • Chris Dinneen
  • Ken Hester (NVidia)
  • Navjot Kukreja (Imperial College London)
  • Giacomo La Scala
  • Mathias Louboutin (Georgia Institute of Technology)
  • Fabio Luporini (Devito Codes)
  • Oscar Mojica (SENAI CIMATEC)
  • Rhodri Nelson (Imperial College London)
  • John Washbourne (Chevron)

- Python
Published by github-actions[bot] almost 6 years ago

devito - Devito-v4.2.2

Compiler: - 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 contributors to this release (last surname alphabetical order): George Bisbas (Imperial College London) Gerard Gorman (Imperial College London) Mathias Louboutin (Georgia Institute of Technology) Fabio Luporini (Devito Codes) Oscar Mojica (SENAI CIMATEC) Rhodri Nelson (Imperial College London) Peterson Nogueira (SENAI CIMATEC) JoΓ£o Henrique Speglich (SENAI CIMATEC) LauΓͺ Rami Souza Costa de Jesus (SENAI CIMATEC) John Washbourne (Chevron)

- Python
Published by mloubout about 6 years ago

devito - Devito-4.2.1

pip * 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 this release (last surname alphabetical order): George Bisbas (Imperial College London) Gerard Gorman (Imperial College London) Mathias Louboutin (Georgia Institute of Technology) Fabio Luporini (Devito Codes) Oscar Mojica (SENAI CIMATEC) Rhodri Nelson (Imperial College London) Peterson Nogueira (SENAI CIMATEC) JoΓ£o Henrique Speglich (SENAI CIMATEC) LauΓͺ Rami Souza Costa de Jesus (SENAI CIMATEC) John Washbourne (Chevron)

- Python
Published by ggorman about 6 years ago

devito - Devito-4.2

GPU 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 compilation time).
  • Various low-level performance and memory optimizations (e.g. identifying and removing redundant computations).

DSL extensions

  • tools.Evaluable -> finite_differences.Evaluable
  • Dynamic FD shortcuts (i.e. u.dx(fd_order=2)). Supports FD order, x0 and side.

YASK and OPS backends

  • After a great deal of consideration, we have decided to drop support for YASK (https://01.org/yask) and OPS (https://github.com/OP-DSL/OPS) as Devito backends. While YASK and OPS have many desirable features, the software engineering overhead (person-effort) to maintain feature-complete support proved unsustainable. We would like to take this opportunity to thank Chuck Yount (YASK) and Istvan Reguly (OPS) for their collaboration on both software development and algorithm development, which has been of great benefit to Devito.

Tutorials and documentation

  • Revised FAQ - https://github.com/devitocodes/devito/wiki/FAQ
  • New Jupyter notebooks:
    • GPU tutorial.
    • PML boundary condition tutorial.
    • Normal Moveout (NMO) tutorial.
  • Revised viscoelastic example.

General updates

  • Added Developer Certificate of Origin to Devito contribution guidelines.
  • General improvements to documentation, examples and tutorials.
  • Several minor bug fixes.
  • Increased test coverage.
  • Improvements to test code coverage reporting.
  • Added PGI compiler support.
  • Added MPI support for the SubDomainSet feature.
  • Additional runtime warnings for inadequate problem specifications, e.g. stencil radius greater than rank-domain width.
  • Deprecate DEVITODLE, replaced by DEVITOOPT.
  • Deprecate DEVITOOPENMP, replaced by DEVITOLANGUAGE.

Many thanks to all the contributors to this release (last surname alphabetical order):

  • George Bisbas (Imperial College London)
  • Tim Burgess (DownUnder Geosolutions)
  • Edward Caunt (Imperial College London)
  • Gerard Gorman (Imperial College London)
  • Mathias Louboutin (Georgia Institute of Technology)
  • Fabio Luporini (Devito Codes)
  • Rhodri Nelson (Imperial College London)
  • Peterson Nogueira (SENAI CIMATEC and UFBA)
  • Joao Speglich (SENAI CIMATEC)
  • John Washbourne (Chevron)
  • Philipp Witte (Georgia Institute of Technology)

Special thanks and congratulations to Ken Hester (NVidia), winner of the Devito hackathon at Rice OGHPC 2020, who used the Devito JIT backdoor to develop the prototype OpenACC code which informed the implementation of OpenACC code generation support within this release.

- Python
Published by ggorman about 6 years ago

devito - 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)

- Python
Published by FabioLuporini over 6 years ago

devito - Devito-4.0

Tensor 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 evaluation at half-nodes (averaging only) - Automatic staggered FD of any order

MPI: - MPI data slicing fixes(#1008) - SparseFunction fixes (gathering with correct coordinates) (#922) - MPI parameters correctly passed to the Operator (#1016, #1019) - Gathering bug fix (#916) - Domain decomposition improvements (#915, #904) - Effective computation/communication overlap - Fixed argument processing to acquire the correct MPI communicator

GPU: - More progress on the OPS backend - OpenMP-5.x offloading experimental support (#1004, #1012) (note: compiler installation instructions available on the Devito wiki)

Performance: - Better OpenMP scheduling and sparse loop handling (#995) - Faster compilation (#932)

Misc: - More robust inheritance from sympy and support for latest version (#1005) - Model bug fixes and cleanup (#1000, #1015) - Model now initializes/pads all object via Operators (#911) - CustomCompiler now uses the system/user provided parameters correctly (#925) - Devito based Gaussian smoother (#931) - ARM support (#940) - Better caching infrastructure (#956) removing the majority of memory leaks - Improved benchmarking infrastructure

Many thanks to all the contributors to this release (last surname alphabetical order):

  • George Bisbas (Imperial College London)
  • Maelso Bruno (Federal University of ParaΓ­ba)
  • Lucas Cavalcante (Federal University of Rio Grande do Norte)
  • Gabriel Sebastian von Conta (Universidade Federal do Rio Grande do Norte)
  • Arthur Giannotta (University of SΓ£o Paulo)
  • Gerard Gorman (Imperial College London)
  • Navjot Kukreja (Imperial College London)
  • Mathias Louboutin (Georgia Institute of Technology)
  • Fabio Luporini (Imperial College London)
  • Vitor Mickus (Federal University of Rio Grande do Norte)
  • Rhodri Nelson (Imperial College London)
  • Vincenzo Pandolfo (G-Research)
  • Elias Gabriel Amaral da Silva (Federal University of Rio Grande do Norte)
  • Jaime Freire de Souza (University of SΓ£o Paulo)

- Python
Published by mloubout over 6 years ago

devito - Devito-3.5

Release 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.
  • DLE: OpenMP nested parallelism; hierarchical loop blocking.
  • Auto-padding for Functions/TimeFunctions.
  • Improved data dependency analysis.
  • Smarter Operator auto-tuning.
  • New tutorials: Operator application, MPI, new propagators, custom stencils, and more.
  • Revisited benchmarking scripts.
  • Revisited examples, new models and propagators (e.g., visco-elastic).
  • Smarter continuous integration: now Travis sided by Azure Pipelines; dropped Jenkins.
  • Misc bug fixes.
  • Hundreds of tests added.
  • More sophisticated platform auto-detection.
  • Update in checkpointing (via PyRevolve) to significantly reduce memory consumption and overall runtimes. Not backward compatible.
  • Experimental support for lossy compression of checkpoints through PyRevolve + ZFP.

- Python
Published by FabioLuporini almost 7 years ago

devito - Devito-3.4

Release 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

- Python
Published by FabioLuporini over 7 years ago

devito - Devito-3.3

This 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
  • Caching of JIT-compiled code
  • More accurate profiling reports
  • Extended YASK support (e.g., boundary conditions)

- Python
Published by FabioLuporini almost 8 years ago

devito - DFT paper

- Python
Published by FabioLuporini about 8 years ago

devito - Devito-3.2

This 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, better, more robust processing for Operator arguments
  • Significantly more powerful IterationSpace
  • Smarter clusterization

- Python
Published by FabioLuporini over 8 years ago

devito - Devito-3.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 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

- Python
Published by FabioLuporini over 8 years ago

devito - Devito-3.1

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...

- Python
Published by mlange05 over 8 years ago

devito - Devito-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

- Python
Published by mlange05 almost 9 years ago

devito - Devito-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

- Python
Published by mlange05 about 9 years ago

devito - Devito-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

- Python
Published by mlange05 about 9 years ago

devito - Devito-3.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.

- Python
Published by mlange05 about 9 years ago

devito - Stable v2.0.1 pre-release

Initial tag of stable v2.0.1 pre-release.

- Python
Published by mlange05 over 9 years ago