github halide/Halide v18.0.0
Halide v18.0.0

latest releases: v19.0.0.dev0, v18.0.0.dev0, v17.0.0.dev0...
2 months ago

Changes Of Note since Halide 17

  • Ring-buffering now supported in schedules (Func::ring_buffer()). This is distinct from fold_storage in that it folds across time (the loop variables) rather than folding across space (the pure vars of the Func).
  • Fixed a longstanding bug in lossless_cast()
  • Lots of fixes for Vulkan backend
  • OpenGLCompute is no longer supported
  • Added support for ARM SVE2
  • Added (basic) support for Intel APX and AVX10
  • Added support for Hexagon HVX v68
  • Added support for numpy's .npy format to .debug_to_file() and the code in halide_image_io.h
  • Python bindings now support bfloat and int64 properly
  • Hacky code that auto-named Funcs, Vars etc via DWARF introspection was removed
  • The profiler was revamped to behave better when multiple Halide pipelines are in flight at the same time.
  • Numerous lowering passes were sped up, resulting in faster compilation for large pipelines. However, time spent in LLVM is still the long pole for most pipelines.
  • Fixed-point instruction selection has been improved via tracking constant integer bounds of expressions.
  • Adds feature detection for ARM CPUs to the runtime library and to the host target feature computation. Supports Windows, macOS,
    Linux, iOS, and Android.

Deprecations / Removals

  • tuple_select() has been removed in favor of overloads to select().
  • Various fixed-point operators have been removed from the Halide::Internal namespace and are now in the public Halide namespace.

What's Changed

New Contributors

Full Changelog: v17.0.2...v18.0.0

Don't miss a new Halide release

NewReleases is sending notifications on new releases.