A[..., idx[mask]]
I'd hate to have to express that in serial code and then pray a compiler could lift the correct vectorized version out of it.People typically use Triton or CUDA (usually the C++ flavor) to implement operations. It'd be cool if Rust had a CUDA dialect.
It seems like you can target CUDA with Rust, because this project seems to be doing that?
That’s the C++ variant of cuda, not Rust. They’re just binding it as one might in Python. At which point, what’s the value add?
You're not really doing "ML in Python", you're doing ML with those bunch of libraries that happens to expose limited bindings in Python.
I am saying “all” because all operations we are doing are reduced to a tree of just these operations.
It turns out that these are enough, and that’s good because floating point units are limited. You don’t want to waste transistors on operations that don’t provide a lot of value.