Ingest, store, & analyze all types of time series data in a fully-managed, purpose-built database. Keep data forever with low-cost storage and superior data compression. Learn more →
Halide Alternatives
Similar projects and alternatives to Halide
-
-
-
InfluxDB
Access the most powerful time series database as a service. Ingest, store, & analyze all types of time series data in a fully-managed, purpose-built database. Keep data forever with low-cost storage and superior data compression.
-
zig
General-purpose programming language and toolchain for maintaining robust, optimal, and reusable software.
-
TensorOperations.jl
Julia package for tensor contractions and related operations
-
-
-
Sonar
Write Clean C++ Code. Always.. Sonar helps you commit clean C++ code every time. With over 550 unique rules to find C++ bugs, code smells & vulnerabilities, Sonar finds the issues while you focus on the work.
-
ponyc
:horse: Pony is an open-source, actor-model, capabilities-secure, high performance programming language
-
-
-
-
-
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
-
-
-
linguist
Language Savant. If your repository's language is being reported incorrectly, send us a pull request!
-
-
-
ixy-languages
A high-speed network driver written in C, Rust, C++, Go, C#, Java, OCaml, Haskell, Swift, Javascript, and Python
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
Halide reviews and mentions
-
What would make you try a new language?
If we drop the "APL" requirement, wouldn't Halide fit your criteria for the third?
-
Library that could generate vectorized code for different instruction sets?
Adobe halide https://github.com/halide/Halide
-
Show HN: Port of OpenAI's Whisper model in C/C++
I suggest looking into Halide as it will make trying different paths much easier (https://halide-lang.org/).
I haven't looked at your code closely so can't say with certainty it would be the right fit but worth a look.
-
Esp32 tensorflow lite
Halide home page: https://halide-lang.org/
-
Why Functional Programming Should Be the Future of Software
I like and agree with much of the advantages of FP, but I’ve never used it exclusively.
A number of years ago, we worked with a startup that was based around a new FP language, focused on image processing pipelines[0]. It’s actually vey cool. We came from a C++ background.
Learning the language was difficult, but our team was very capable, and very experienced. We did it.
But it was just too limited, and the advantages never appeared for us. We were doing it for an embedded implementation.
It was a really neat experience, but ended up as a failure. I am sorry for that, as I actually thought they had the right idea, and I think that management failure was as much to blame as technical hurdles. The language had many limitations, but we were still able to work with it. That’s what you get, with a highly capable team.
These days, I program in Swift, which has many FP features. I enjoy it.
Nonetheless, I think that many of these “new paradigms” are built around the premise that most programmers suck, and need to be forced to write good code, and that never seems to work.
Companies seem to be desperate to hire crappy engineers, and get them to write good code, as opposed to hiring decent engineers, in the first place, and those folks can write good code, regardless of the tools.
-
How does control flow happen in declarative programming languages?
I agree with you, but I see this as a strength rather than a weakness. A current trend in high-performance computing is to separate the declarative part of a program from its execution strategy (see Halide). This makes it possible to run the same program on different hardware in a performant way and be actually sure that it is the same program.
-
AMD HIP + Cuda in same program
Or you use OpenCL. Or you write the GPU code in https://halide-lang.org or https://taichi.graphics which support many backends (CPU, Nvidia GPU, AMD GPU, Intel GPU, OpenGL, DirectX, Vulkan, ....)
-
[D] Any way to speed up simple mathematical functions without implementing cuda kernels for pytorch?
Hi, I'm one if the PyKeOps authors :-) From what I understand of your problem, KeOps may not be the right tool for you since it’s geared towards geometric operations instead of convolution-like kernels. However, other domain-specific compilers exist for these: you may want to check Halide and TVM. Overall I agree with you though: it’s unfortunate that TensorComprehensions didn’t really go beyond a demo as it could have filled a super useful niche in the ecosystem. Good luck for your project!
-
Multiplications and 2 additions are faster than 2 additions
I think it's worth pointing out that the reason why these two examples execute at different speed is due to how compiler translated code AND because CPU was able to parallelize work. Compilers take knowledge about target platform (e.g. instruction set) and code and translate it into executable code. Compiler CAN (but doesn't have to) rewrite code only if it ALWAYS produces the same result as input code.
I feel like last 110-15 years (majority of) people have stopped thinking about specific CPU and only think about ISA. That works for a lot of workloads but in recent years I have observed that there is more and more interest in how specific CPU can execute code as efficiently as possible.
If you're interested in the kind of optimizations performed in the example you should check out polyhedral compilation (https://polyhedral.info/) and halide (https://halide-lang.org/). Both can be used to speed up certain workloads significantly.
-
Currently, what are some of the worst things about C++?
I also maintain the build system for Halide, but as it's less greenfield, there are some things I would need team buy-in to change. It's also much more complex (building code generators necessarily is). I'm still pretty happy with it, though. See here: https://github.com/halide/Halide
-
A note from our sponsor - InfluxDB
www.influxdata.com | 20 Mar 2023
Stats
halide/Halide is an open source project licensed under GNU General Public License v3.0 or later which is an OSI approved license.