loop_tool
shumai
loop_tool | shumai | |
---|---|---|
4 | 15 | |
145 | 1,122 | |
- | 0.2% | |
0.0 | 2.2 | |
over 1 year ago | 10 months ago | |
C++ | TypeScript | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
loop_tool
-
Tinygrad: A simple and powerful neural network framework
I've done some work in the past in representations and you actually can represent Conv and MatMul in more primitive ways. I ended up writing an IR called loop_tool that exposes this stuff pretty nicely:
https://github.com/facebookresearch/loop_tool/blob/main/pyth...
The idea is basically this: https://news.ycombinator.com/item?id=28883086
-
Interactive Loop Optimization
I just finished adding a basic WASM[1] backend + basic JavaScript frontend[2]. I'm in the process of adding in-browser optimization[3] and will hope to have a demo some time this week!
[1] https://github.com/facebookresearch/loop_tool/blob/main/src/...
[2] https://github.com/facebookresearch/loop_tool/blob/main/java...
[3] https://github.com/facebookresearch/loop_tool/blob/main/test...
- Loop_tool: A toolkit for loop-based computation
- Loop_tool tutorial – a lazy symbolic linear algebra toolkit
shumai
-
PyTorch Primitives in WebGPU for the Browser
https://github.com/tensorflow/tfjs/tree/master/tfjs-backend-...
([...], tflite-support, tflite-micro)
From facebookresearch/shumai (a JS tensor library) https://github.com/facebookresearch/shumai/issues/122 :
> It doesn't make sense to support anything besides WebGPU at this point. WASM + SIMD is around 15-20x slower on my machine[1]. Although WebGL is more widely supported today, it doesn't have the compute features needed for efficient modern ML (transformers etc) and will likely be a deprecated backend for other frameworks when WebGPU comes online.
tensorflow rust has a struct.Tensor:
-
Why do people curse JS so much, but also say it's better than Python
JS for ML actually does exist https://github.com/facebookresearch/shumai
-
Breaking Up with Python
> It's really a shame that data science, ML, and notebooks are so wrapped up in it. Otherwise we could jettison the whole thing into space
Although I personally feel Python has its place, I contribute to a project that hopes to diversify the ML/scientific computing space with a TypeScript tensor lib called Shumai: https://github.com/facebookresearch/shumai
-
Tinygrad: A simple and powerful neural network framework
Doesn’t really matter for large batch/large model training on GPUs that don’t need much coordination.
But Python speed is one of the main motivations for a JS/TS based ML lib I’m working on: https://github.com/facebookresearch/shumai
-
[D] Using JavaScript for ML Training/Research (not in the browser)
As a hedge against CPython never becoming fast, we're creating a project called Shumai that attempts to deeply integrate with a new JavaScript runtime (Bun[3]).
-
Python 3.11 is much faster than 3.8
You can expose objects. Here's how it is done in Bun: https://github.com/facebookresearch/shumai/blob/main/shumai/...
We've been using this feature heavily in Shumai.
I think you are vastly overestimating the complexity associated with this (user exposed ref-counting/garbage collection) and may not be totally up to date on what's implemented.
- Shumai: Fast Differentiable Tensor Library in TypeScript with Bun and Flashlight
- Shumai: A fast differentiable tensor library for research in TypeScript and JavaScript
-
7% Speedup from Switch to and
This thought is pretty much the exact motivation behind a recent effort I’m helping out with https://github.com/facebookresearch/shumai
What are some alternatives?
thinc - 🔮 A refreshing functional take on deep learning, compatible with your favorite libraries
rosettaboy - A gameboy emulator in several different languages
black - The uncompromising Python code formatter
jittor - Jittor is a high-performance deep learning framework based on JIT compiling and meta-operators.
openpilot - openpilot is an open source driver assistance system. openpilot performs the functions of Automated Lane Centering and Adaptive Cruise Control for 250+ supported car makes and models.
tinygrad - You like pytorch? You like micrograd? You love tinygrad! ❤️ [Moved to: https://github.com/tinygrad/tinygrad]
devdocs - API Documentation Browser
FrameworkBenchmarks - Source for the TechEmpower Framework Benchmarks project
nnabla - Neural Network Libraries
Pytorch - Tensors and Dynamic neural networks in Python with strong GPU acceleration