benchmark
shumai
benchmark | shumai | |
---|---|---|
3 | 15 | |
789 | 1,121 | |
3.3% | 0.1% | |
9.8 | 2.2 | |
3 days ago | 10 months ago | |
Python | TypeScript | |
BSD 3-clause "New" or "Revised" 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.
benchmark
-
PyTorch Primitives in WebGPU for the Browser
>What's a fair benchmark?
the absolute golden benchmarks are https://github.com/pytorch/benchmark
- [R] AMD Instinct MI25 | Machine Learning Setup on the Cheap!
-
[R] PyTorch | Budget GPU Benchmarking
TorchBench (https://github.com/pytorch/benchmark) is used by PyTorch core developers to test performance across a wide variety of models. I've never used it personally though.
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?
llama.cpp - LLM inference in C/C++
rosettaboy - A gameboy emulator in several different languages
wonnx - A WebGPU-accelerated ONNX inference run-time written 100% in Rust, ready for native and the web
jittor - Jittor is a high-performance deep learning framework based on JIT compiling and meta-operators.
potatogpt - Pure Typescript, dependency free, ridiculously slow implementation of GPT2 for educational purposes
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.
opov - Operator Overloading for Typescript with Tagged Template Literals
devdocs - API Documentation Browser
requests-wasm-polyfill - Drop-in replacement for the requests library for wasm python
FrameworkBenchmarks - Source for the TechEmpower Framework Benchmarks project
tfjs - A WebGL accelerated JavaScript library for training and deploying ML models.
Pytorch - Tensors and Dynamic neural networks in Python with strong GPU acceleration