Skip to content
Commit 34c7344b authored by Andreas Klöckner's avatar Andreas Klöckner Committed by Andreas Klöckner
Browse files

Refactor argument passing

- Refactor argument passing so that instead of implicitly-spawned
  `ImplementedDataInfo` objects, there are actual arguments (for
  automatic offsets and strides, base storage, and `sep`-tagged arrays).
  It also centralizes the logic for what goes into argument lists,
  instead of having various "filtered" versions scattered about.
- Get started on type-annotating a bit of loopy.
- Switch a not-small number of data structures to be dataclasses, notably `LoopKernel`.
- Drop OCCA support from the ISPC target. (I'm not aware of any users, ever.)
- Drop the Numba target outright. (I'm not aware of any users, ever.)
- Drop `LoopKernel.local_sizes`, which was usable to directly set the
  workgroup size. (I'm not aware of any users, ever.)
- Expire the deprecation for `iname_to_tags`.
- Bumps the Python compatibility target to 3.8, for `from __future__
  import annotations` and  `cached_property` (mypy does not support
  nested decorators)
- Bug fix: `tags` was not part of `LoopKernel.hash_fields`
- Bug fix: `InstructionBase.get_write_dependency_names()` was used to
  find written variables, `InstructionBase.assignee_var_names()` is
  correct
- Bug fix: KernelExecutorBase now uses linearize() so as to not bypass
  pre-linearization checks (cf. gh-639)
parent ffa29abe
Loading
Loading
Loading
Pipeline #310315 failed with stages
in 1 hour, 44 minutes, and 32 seconds