I'm happy with most of the abstractions. We are pushing to assembly codegen. And if you meant things like matrix accelerators, that's my next priority.
We are taking more a of breadth first approach. I think ggml is more depth first and application focused. (and I think Mojo is even more breadth first)
It's easy to debug because the generated kernels can be compared to GGML, and still gives something practical that we all can play with.
At this point breadth first is a bit boring, because this way we don't know how far tinygrad is from optimal generated output.
From what I see, the foundation is there for a great multimodal platform. Very excited to see where this goes.
There are advantages to simplicity, after all.
Wasn’t implying it’s CPU only, just that it started as a CPU optimized library.
> ...lately we have been augmenting it with GPU support.
Would you say you'd then be building an equivalent to Google's JAX?
Someone even asked if anyone would build a C++ to JAX transpiler [0]... I am wondering if that's something you may implement? Thanks.