Halide

a language for fast, portable data-parallel computation (by halide)

Halide Alternatives

Similar projects and alternatives to Halide

  1. rust

    2,831 Halide VS rust

    Empowering everyone to build reliable and efficient software.

  2. InfluxDB

    InfluxDB – Built for High-Performance Time Series Workloads. InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now.

    InfluxDB logo
  3. zig

    879 Halide VS zig

    General-purpose programming language and toolchain for maintaining robust, optimal, and reusable software.

  4. tldr

    276 Halide VS tldr

    📚 Collaborative cheatsheets for console commands

  5. v

    233 Halide VS v

    Simple, fast, safe, compiled language for developing maintainable software. Compiles itself in <1s with zero library dependencies. Supports automatic C => V translation. https://vlang.io

  6. whisper.cpp

    Port of OpenAI's Whisper model in C/C++

  7. wuffs

    Wrangling Untrusted File Formats Safely

  8. highway

    Performance-portable, length-agnostic SIMD with runtime dispatch

  9. SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
  10. futhark

    56 Halide VS futhark

    :boom::computer::boom: A data-parallel functional programming language

  11. abseil-cpp

    Abseil Common Libraries (C++)

  12. taichi

    39 Halide VS taichi

    Productive, portable, and performant GPU programming in Python.

  13. terra

    43 Halide VS terra

    Terra is a low-level system programming language that is embedded in and meta-programmed by the Lua programming language.

  14. lobster

    39 Halide VS lobster

    The Lobster Programming Language

  15. smhasher

    36 Halide VS smhasher

    Hash function quality and speed tests (by rurban)

  16. burn

    16 Halide VS burn

    Burn is a next generation Deep Learning Framework that doesn't compromise on flexibility, efficiency and portability.

  17. CUDA.jl

    15 Halide VS CUDA.jl

    CUDA programming in Julia.

  18. dhall

    11 Halide VS dhall

    Maintainable configuration files

  19. png-decoder

    A pure-Rust, no_std compatible PNG decoder

  20. triton

    37 Halide VS triton

    Development repository for the Triton language and compiler

  21. SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a better Halide alternative or higher similarity.

Halide discussion

Log in or Post with

Halide reviews and mentions

Posts with mentions or reviews of Halide. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2025-05-09.
  • Implementing a Struct of Arrays
    2 projects | news.ycombinator.com | 9 May 2025
    Yep. We’re in a situation where C-like languages couple layout and access interface very tightly. But, now cache is such an overriding issue in optimization, you really want to rapidly experiment with different layouts without rewriting your whole algorithm every time. AOS, SOA, AOSOA, hot/cold data for different stages, etc…

    Jon Blow’s Jai language famously added a feature to references that allowed you to easily experiment with moving data members between hot/cold arrays of structs.

    https://halide-lang.org/ tackles a related problem. It decouples the math to be done from the access order so as to allow you to rapidly test looping over data in complicated ways to achieve cache-friendly access patterns for your specific hardware target without rewriting your whole core loop every time.

    Halide is primarily an about image processing convolution kernels. I’m not sure how general purpose it can get.

  • Why performance optimization is hard work
    5 projects | news.ycombinator.com | 29 Apr 2025
    Good article that I agree with mostly. One interesting note is this:

    > There is no way to provide both optimized assembly and equivalent C code and let the compiler use the former in the general case and the latter in special cases.

    This is true, but can be seen as a failure of language and tooling. For example, Halide [1] pioneered (AFAIK) the concept of separating algorithm from implementation at the language level. This separation lets you express the algorithm once, and then "schedule" it by specifying parallelism, vectorization, etc. You can provide multiple schedules for one algorithm, which allows you to specialize / make different choices depending on varying factors.

    It's a really interesting concept, though maybe limited in practice to DSLs. I'm not sure a general purpose language would be a good fit for this model, but then, for general purpose programs written in general purpose languages, perf optimization at the level TFA discusses is frequently limited to just specific hot sections. Those hot sections could be extracted out into specialized components written in such a DSL.

    1 - https://halide-lang.org/

  • CubeCL: GPU Kernels in Rust for CUDA, ROCm, and WGPU
    6 projects | news.ycombinator.com | 23 Apr 2025
    This reminds me of Halide (https://halide-lang.org/).

    In Halide, the concept was great, yet the problems in kernel development were moved to the side of "scheduling", i.e. determining tiling/vectorization/parallellization for the kernel runs.

  • Compiling Array Languages for SIMD [pdf]
    3 projects | news.ycombinator.com | 12 Feb 2025
    > Hence it becomes a game of scheduling. You already know what you need to optimise but actually doing so gets really hard really fast.

    This immediately makes me think of Halide, which was specifically invented to make this easier to do by decoupling the algorithm from the scheduler.

    Kind of sad that it doesn't see to have caught on much.

    [0] https://halide-lang.org/

  • Halide – a language for fast, portable computation on images and tensors
    1 project | news.ycombinator.com | 5 Jan 2025
  • Halide: A language for fast, portable computation on images and tensors
    1 project | news.ycombinator.com | 11 Oct 2024
  • Show HN: Flash Attention in ~100 lines of CUDA
    2 projects | news.ycombinator.com | 16 Mar 2024
    If CPU/GPU execution speed is the goal while simultaneously code golfing the source size, https://halide-lang.org/ might have come in handy.
  • Halide v17.0.0
    1 project | news.ycombinator.com | 1 Feb 2024
  • From slow to SIMD: A Go optimization story
    10 projects | news.ycombinator.com | 23 Jan 2024
    This is a task where Halide https://halide-lang.org/ could really shine! It disconnects logic from scheduling (unrolling, vectorizing, tiling, caching intermediates etc), so every step the author describes in the article is a tunable in halide. halide doesn't appear to have bindings for golang so calling C++ from go might be the only viable option.
  • Implementing Mario's Stack Blur 15 times in C++ (with tests and benchmarks)
    1 project | news.ycombinator.com | 10 Nov 2023
    Probably would have been much easier to do 15 times in https://halide-lang.org/

    The idea behind Halide is that scheduling memory access patterns is critical to performance. But, access patterns being interwoven into arithmetic algorithms makes them difficult to modify separately.

    So, in Halide you specify the arithmetic and the schedule separately so you can rapidly iterate on either.

  • A note from our sponsor - SaaSHub
    www.saashub.com | 23 May 2025
    SaaSHub helps you find the best software and product alternatives Learn more →

Stats

Basic Halide repo stats
49
6,065
9.2
1 day ago

Sponsored
InfluxDB – Built for High-Performance Time Series Workloads
InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now.
www.influxdata.com

Did you know that C++ is
the 7th most popular programming language
based on number of references?