Skip to content

GT4Py v1.2.3

Latest

Choose a tag to compare

@edopao edopao released this 05 Oct 14:06
· 10 commits to main since this release
3bd69c8

Changes since v1.2.2

General

  • Update DaCe to 2.0.0a10.
  • Replace gt4py.eve.extended_typing with gt4py.eve.xtyping, importing typing symbols
    from typing, typing_extensions, or collections.abc directly.
  • Speed up eve with cheaper isinstance checks for nodes and avoid deep copies
    of immutable leaf values.
  • Run development scripts in a scripts-only environment, reducing startup from ~6 s to well under a second.
  • Remove the Gitpod and devcontainer development setups.

Cartesian

  • Fix the performance regression in the dace:gpu backend for stencils with parallel vertical loops.

All changes

  • fix[next]: guard on inline_let_params values, not keys, in InlineDynamicShifts by @havogt in #2853
  • refactor[cartesian]: remove unused list of missing_api_parameters from OIR -> TreeIR by @romanc in #2862
  • fix[next]: collect closure vars via the compiler's scope analysis by @havogt in #2866
  • fix[next]: register jax.core.Tracer for embedded field dispatch on jax >= 0.11 by @havogt in #2867
  • perf[next]: read free variables from the closure cells by @havogt in #2869
  • refactor[next]: merge OTF definitions into stages, extract artifacts, enforce the layering by @egparedes in #2737
  • fix[next]: concat_where crashes on neighbor-list fields by @tehrengruber in #2837
  • test[cartesian,next]: un-shadow duplicate tests and repair two tuple-slicing tests by @havogt in #2875
  • build: remove the Gitpod and devcontainer setup by @havogt in #2876
  • fix[next-dace]: concat_where with a neighbor-list result by @havogt in #2873
  • test[next]: run all workshop solution notebooks by @havogt in #2878
  • refactor[next]: remove the gtfn imperative backend by @havogt in #2877
  • fix[next]: gtfn program arguments that are single-element tuples of tuples by @havogt in #2880
  • test[next-dace]: Add symbolic LoopBlocking tests by @iomaganaris in #2827
  • feat[next]: type annotations in the ITIR pretty-printed syntax by @havogt in #2822
  • ci: remove dead CI infrastructure and fix the stale docs around it by @havogt in #2879
  • fix[next]: key the frontend stage cache on type annotations by @havogt in #2886
  • docs: Update ADR amendment guidelines in AGENTS.md by @havogt in #2887
  • fix[next-dace]: make the dace build folder safe for concurrent and interrupted compiles by @havogt in #2888
  • perf[next]: resolve enabled transformations once per fixed-point pass by @havogt in #2891
  • perf[next-dace]: cheap checks before is_parallel in horizontal map fusion by @havogt in #2892
  • perf[next-dace]: end the top-level optimization loop before it repeats itself by @havogt in #2893
  • perf[next-dace]: propagate memlets again only after a split applied by @havogt in #2894
  • perf[eve]: nominal isinstance checks for nodes and no deep copies of immutable leaves by @havogt in #2889
  • build: bump dace version by @edopao in #2874
  • refactor[next-dace]: use add_scope_connectors() by @edopao in #2902
  • fix[next]: lower unstructured shifts with the offset's own tag by @egparedes in #2898
  • refactor[eve]: replace extended_typing re-exports with xtyping by @egparedes in #2842
  • perf[cartesian]: Fix dace:gpu performance regression by @stubbiali in #2914
  • refactor[next]: replace factory-boy factories with plain builders by @egparedes in #2808
  • fix[scripts]: run dev-scripts in a scripts-only environment by @egparedes in #2928
  • refactor: drop generated-code formatting from next, move formatter to eve.formatting by @egparedes in #2927
  • ci: bump minimum packaging version by @edopao in #2936
  • fix[next-dace]: do not relocate distributed buffer write back into loop bodies by @edopao in #2818
  • feat[next]: include dace build_folder_mode in gt4py config by @edopao in #2933
  • build: bump dace version to alpha-10 by @edopao in #2934
  • Releasing v1.2.3 by @edopao in #2938

Full Changelog: v1.2.2...v1.2.3