-
einops
Flexible and powerful tensor operations for readable and reliable code (for pytorch, jax, TF and others)
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
See also https://github.com/arogozhnikov/einops
Having used these (mostly translating code that used them) I see the power and benefit. I also find it takes a lot of mentally energy to get my head around them and makes readability harder.
I played around with the idea of a language motivated by this same thought process last year: https://github.com/lukehoban/ten.
> Ten has the following features:
I wrote a library in C++ (I know, probably a non-starter for most reading this) that I think does most of what you want, as well as some other requests in this thread (generalized to more than just multiply-add): https://github.com/dsharlet/array?tab=readme-ov-file#einstei....
A matrix multiply written with this looks like this:
enum { i = 2, j = 0, k = 1 };
PyTorch also has some support for them, but it's quite incomplete and has many issues so that it is basically unusable. And its future development is also unclear. https://github.com/pytorch/pytorch/issues/60832
Related posts
-
PyTorch 2.3: User-Defined Triton Kernels, Tensor Parallelism in Distributed
-
Clasificador de imágenes con una red neuronal convolucional (CNN)
-
Tinygrad: Hacked 4090 driver to enable P2P
-
Functions and operators for Dot and Matrix multiplication and Element-wise calculation in PyTorch
-
Dot vs Matrix vs Element-wise multiplication in PyTorch