Download Latest Version Halide-21.0.0-x86-64-linux-b629c80de18f1534ec71fddd8b567aa7027a0876.tar.gz (183.4 MB)
Email in envelope

Get an email when there's a new version of Halide

Home / v19.0.0
Name Modified Size InfoDownloads / Week
Parent folder
README.md 2024-12-17 12.7 kB
v19.0.0 source code.tar.gz 2024-12-17 33.2 MB
v19.0.0 source code.zip 2024-12-17 34.2 MB
Halide-19.0.0-x86-64-windows-5f17d6f8a35e7d374ef2e7e6b2d90061c0530333.zip 2024-12-15 62.7 MB
Halide-19.0.0-x86-64-osx-5f17d6f8a35e7d374ef2e7e6b2d90061c0530333.tar.gz 2024-12-15 155.8 MB
Halide-19.0.0-x86-64-linux-5f17d6f8a35e7d374ef2e7e6b2d90061c0530333.tar.gz 2024-12-15 171.8 MB
Halide-19.0.0-x86-32-windows-5f17d6f8a35e7d374ef2e7e6b2d90061c0530333.zip 2024-12-15 57.1 MB
Halide-19.0.0-x86-32-linux-5f17d6f8a35e7d374ef2e7e6b2d90061c0530333.tar.gz 2024-12-15 181.3 MB
Halide-19.0.0-arm-64-osx-5f17d6f8a35e7d374ef2e7e6b2d90061c0530333.tar.gz 2024-12-15 156.9 MB
Halide-19.0.0-arm-64-linux-5f17d6f8a35e7d374ef2e7e6b2d90061c0530333.tar.gz 2024-12-15 171.5 MB
Halide-19.0.0-arm-32-linux-5f17d6f8a35e7d374ef2e7e6b2d90061c0530333.tar.gz 2024-12-15 169.1 MB
Totals: 11 Items   1.2 GB 0

Major improvements

  • Halide is now available for both C++ and Python usage via Pip. Try pip install halide today!
  • The Vulkan backend has matured substantially.
  • The HTML "conceptual statement" output now supports dark mode viewing.
  • For developers, CMake 3.28 is now required and we no longer require an internet connection during the build.
  • Thread pool improvements mean that workloads that do a small number of small tasks in parallel (e.g. a cheap operation applied to a small image) are up to 3x faster. If you have schedules that do not use parallelism for small inputs because you found it didn't provide any speedup, you may want to re-benchmark.
  • You can now query properties of the compiled-for target as Exprs, simplifying helper code that wants to do different things depending on the target architecture. Example: f(x) = select(target_arch_is(Target::ARM), 3, 7). Helpers include target_arch_is, target_os_is, target_has_feature, target_bits, and target_natural_vector_size. These are resolved to constants at compile-time and simplified away. Use with care, as this (intentionally) results in different behavior on different platforms.

Breaking changes

  • We now distribute libGenGen.a rather than GenGen.cpp.
  • Downstream users should link to this library with /WHOLEARCHIVE: or -Wl,--whole-archive rather than build GenGen.cpp themselves.
  • Users of the CMake package should be unaffected.
  • In keeping with our LLVM support policy, support for LLVM 16 has been removed.
  • We no longer use the le64/le32 generic targets for compiling runtime modules to LLVM. These targets were removed in LLVM upstream.

What's Changed

Apps and tests

Autoschedulers

Build system

CodeGen

Debugging

Documentation

Frontend

Hardware backends

LLVM

Python

Runtime

Minor bugfixes / other cleanup

New Contributors

Full Changelog: https://github.com/halide/Halide/compare/v18.0.0...v19.0.0

Source: README.md, updated 2024-12-17